Difference between revisions of "Development using git:Quality assurance"

From Alpine Linux
Jump to: navigation, search
(Add a git hook to catch common errors early)
 
m (Added See Also: Development using git; and categories: Development, Git)
Line 26: Line 26:
  
 
Install it as .git/hooks/pre-commit and make it executable.
 
Install it as .git/hooks/pre-commit and make it executable.
 +
 +
= See Also =
 +
*[[Development using git]]
 +
 +
[[Category:Development]]
 +
[[Category:Git]]

Revision as of 04:55, 16 September 2017

Before pushing anything to it is good to make sure that:

  • The package actually builds
  • Commit message is good
  • pkgrel is bumped if needed
  • no whitespace damage (last chars of a line is whitespace)

The following git hook will help you catch some common errors early:

#!/bin/sh

# Redirect output to stderr.
exec 1>&2

git diff --cached --name-only HEAD | grep 'APKBUILD$' | while read f; do
        olddir=$PWD
        cd ${f%/APKBUILD}
        if ! abuild sanitycheck && verify; then
                exit 1
        fi
        cd "$olddir"
done

# If there are whitespace errors, print the offending file names and fail.
exec git diff-index --check --cached HEAD --

Install it as .git/hooks/pre-commit and make it executable.

See Also