我需要检测是否有任何更改要通过 shell 脚本提交新的GIT
存储库。
git diff --cached HEAD
上面的命令在暂存更改时返回0
,但需要HEAD
。如果找不到,则返回128
(如果是新存储库(。
那么如何检测新存储库是否有更改以及我是否需要提交?
如果我尝试在没有要提交的更改时commit
,它会以返回代码1
退出。
不确定我是否可以利用这个事实。
当且仅当没有要提交的更改时,提交是否返回1
?
我找不到任何支持这一点的文档。
注意:我不是在文件更改时尝试自动提交,我知道我可以为此使用inotifywait
。
从 git 1.7.4.1 开始,只需
git diff --cached --quiet
应该这样做。