Generate version file by hooks

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I'd like to put the SHA1 of the current commit into a source file so that my 
program can further process it -- put it into a log file for example.

My idea is to write a script which reads the SHA1 of the current commit with 
the call

git log -1 --pretty=format:"%H"

(git-describe is not suitable for me) and then generates the wanted source 
file.  To avoid accidentally committing that file I will put its name 
into .git/info/exclude.

I already put the call to my experimental generator script into the hooks 
post-checkout and post-commit, so it will be called if I do a commit or a 
checkout of another branch.

My problem is, that my script won't be called if I do a git-pull, a git-reset 
or a git-merge without conflicts resulting in workfiles of a new commit.  
Maybe there are more git calls which change the current commit I haven't 
thought of yet?

So my question: How to make git call my script automatically in all cases 
where git changes the currently checked out commit?

Maybe there are different solutions to put the current SHA1 into a source 
file?

Of course I know that it's still possible to change the working files without 
git's notice resulting in an inconsistent commit SHA1.  But before doing any 
test runs I normally check with git-status that all files are in a committed 
state but that won't reveal if my generated version file is not up to date.

I use git version 1.5.4.3 and would like to stick to it for some reason if 
possible.

Thanks for your help
Björn
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux