This is an old revision of the document!
hooks
git hooks will fire at various times, depending on the name. You can find example hooks inside .git/hooks/ in any git project.
build number
You might want a distinct number to represent this “build”, or commit (even though we don't really have binary builds in languages like php). We can use a post-commit hook to pull in a subset of the SHA-1 hash. In this example we use the first 6 characters of the SHA-1, writing out to a file named “BUILD”.
#!/bin/sh # # An example hook script that is called after a successful # commit is made. # # To enable this hook, rename this file to "post-commit". git log|head -n 1|cut -c 8-13 - > BUILD
pre-commit: store compressed database dump with each commit
You probably wouldn't want to do this all the time. An example where it is very handy is if you might be working on a project that is a walkthrough from a book or web site. Although you can commit your code, it may depend on the state of the database. A prime example would be a drupal project.
#!/bin/sh # adds a compressed database dump to every commit echo "creating compressed database dump..." mysqldump -umysqluser -pmysqlpass databasename | gzip > filename.gz git add filename.gz exit $?