2016-08-01 90 views
0

我可以以某种方式阻止,当我犯辅助模块东西post-commit钩被称为?我使用该挂钩自动提交与主体工程的子模块修改提交信息,我在“无限循环”得到。防止Git的挂钩',commit`后执行的子模块

文件:post-commit

#!/bin/sh 
if git diff-index --quiet HEAD --; then 
    echo no submodule changes 
else 
    git submodule foreach git add . ; 
    git submodule foreach git commit -am "`cat .git/COMMIT_EDITMSG`" 
fi 

感谢。

+1

仅供参考,重用提交信息的一部分可以通过'-F 做'或'-c --reset-author'除了'-m '。 – ElpieKay

回答

0

我是不是能够正确地解决但对于每个子模块运行命令我没有再遇到这样的问题:

git submodule foreach "git diff-index --quiet HEAD -- || (git add . ; git commit -am \"`cat .git/COMMIT_EDITMSG`\" || :)" 
+0

条件标记引用http://askubuntu.com/a/539293/275390 –