`
bcyy
  • 浏览: 1819056 次
文章分类
社区版块
存档分类
最新评论

利用GIT的HOOK机制,为程序自动生成版本信息

 
阅读更多
利用GIT的HOOK机制,为程序自动生成版本信息

1.git init. 建立git仓库,可以发现.git/hooks目录下有一堆*.sample
2.找到post-commit.sample,post-commit表示提交代码后触发的命令,把后缀去掉
3.在文件最后加入命令,用于在提交之后自动生成包括hash值的头文件:
exec git log --pretty=format:'static TCHAR* gHash=_T("%H");' -n 1 >./.git/LatestHash.h
4.源代码中加入git生成的头文件,就可以使用最新的hash值了。下面代码使用hash跟踪软件版本:

#include "../.git/LatestHash.h"
BOOL CMFCDemoDlg::OnInitDialog()
{
    this->SetDlgItemText(IDC_EDIT_HASH, gHash);


5.提交代码,触发.git/hooks/post-commit中命令的执行,自动生成头文件。

6.重新编译工程,hash值即生效。


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics