假设我正在研究feature/foo
...如果remotes/origin/feature/foo
有变化,是不是有办法防止git提交?
在进行新提交之前合并更改是否有任何优势?
我唯一能想到的就是强迫我们使用git stash,合并更改(希望减少冲突比其他更少)然后使用git stash apply
?
针对您的问题的指针:原则上,您可以使用git fetch
获取远程存储库的状态。此命令获取远程状态并更新origin/feature/foo
分支。您应该能够使用它来构建您想要的钩子。
但!原则上,你只是想重新创建一个使用像颠覆这样的git的情况。 git的最大优点是,您可以完全独立于远程存储库进行提交。 (例如,如果你在纳尼亚内部深处离线时犯了错误,请提交并使用它们来恢复)
如果您遇到的问题是您的合并冲突太大,那么它似乎更像是您流程中的问题。也许尝试专注于较小的功能分支,以防止大的合并冲突。
所以我想用一个提交钩子解决这个问题并不是最好的方法。