Gitolite - 如何禁止快进合并?
Gitolite - how to prohibit fast forward merging?
我正在尝试在我们的办公室采用 git 分支策略,但它要求所有合并都在不使用快进的情况下进行。由于我们都使用不同的工具来处理 git,我想知道是否可以配置 Gitolite 以禁止快进合并推送?
是否有可能检测到这种合并?
git config merge.ff false
见https://git-scm.com/docs/git-config#git-config-mergeff
不,检测不到,因为它根本不是合并。
您可以检测到推送到 gitolite 的领先提交是合并提交(例如:至少有 2 parents 的提交)。
您可以在服务器端的 update
hook 中执行此操作:
- 如果分支名称(第一个参数)与您的一个受保护分支匹配,
- 检查推送的提交(第三个参数)是否有两个 parents
我正在尝试在我们的办公室采用 git 分支策略,但它要求所有合并都在不使用快进的情况下进行。由于我们都使用不同的工具来处理 git,我想知道是否可以配置 Gitolite 以禁止快进合并推送? 是否有可能检测到这种合并?
git config merge.ff false
见https://git-scm.com/docs/git-config#git-config-mergeff
不,检测不到,因为它根本不是合并。
您可以检测到推送到 gitolite 的领先提交是合并提交(例如:至少有 2 parents 的提交)。
您可以在服务器端的 update
hook 中执行此操作:
- 如果分支名称(第一个参数)与您的一个受保护分支匹配,
- 检查推送的提交(第三个参数)是否有两个 parents