Git预提交挂钩,如果存在上游更改,则阻止提交

问题描述 投票:0回答:1

假设我正在研究feature/foo ...如果remotes/origin/feature/foo有变化,是不是有办法防止git提交?

在进行新提交之前合并更改是否有任何优势?

我唯一能想到的就是强迫我们使用git stash,合并更改(希望减少冲突比其他更少)然后使用git stash apply

git git-merge githooks git-commit git-rebase
1个回答
3
投票

针对您的问题的指针:原则上,您可以使用git fetch获取远程存储库的状态。此命令获取远程状态并更新origin/feature/foo分支。您应该能够使用它来构建您想要的钩子。

但!原则上,你只是想重新创建一个使用像颠覆这样的git的情况。 git的最大优点是,您可以完全独立于远程存储库进行提交。 (例如,如果你在纳尼亚内部深处离线时犯了错误,请提交并使用它们来恢复)

如果您遇到的问题是您的合并冲突太大,那么它似乎更像是您流程中的问题。也许尝试专注于较小的功能分支,以防止大的合并冲突。

所以我想用一个提交钩子解决这个问题并不是最好的方法。

© www.soinside.com 2019 - 2024. All rights reserved.