我在pre-push
hook中添加了类似的内容:
gs0=$(git status)
pip-dump
gs1=$(git status)
if [ "gs0" != "gs1" ]
then
git commit -m "pip-dump"
fi
(这是更新我的点数要求文件)
似乎推送不是推送新提交,而是HEAD在脚本开头处的那个推送。
如何解决这个问题?
答案 0 :(得分:17)
你不能:push
命令在调用钩子之前确定要提交哪些提交,如果钩子退出0则推送它。
我看到三个选项:
我个人的偏好是第一个。预推钩是意味着作为“验证此推送是否正常”操作,而不是“改变此推动意味着某些其他不同的推动”操作。这意味着你不会违背软件的“意图”。使用预推钩作为验证器;如果您希望在需要时自动添加git push
提交后调用pip-dump
的脚本,请使用其他名称(例如dump-and-push
)将其写为脚本。