我知道运行git-diff和其他工具可以识别存储库中的更改,但是当我进行部分提交时,我只需要传递提交的文件(而不是整个被触摸的文件集)到预先提交的钩子。预提交挂钩获取部分提交的文件列表
例如,我修改了三个文件,只提交了两个文件,并且我想让预提交钩子知道这两个文件的名称。
git status --porcelain
M A.c
M B.c
M C.h
然后我执行:
git commit -m "two files only" A.c B.c
如何能在pre-commit钩子只得到了两个文件列表的持有?
我刚刚试过这个,发现在脚本被触发之前索引已经更新,所以我可以使用git diff --cached来获取我需要的文件。非常感谢你。 –
不客气! – jszakmeister