Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gitolite-如何禁止快进合并?_Git_Gitolite - Fatal编程技术网

Gitolite-如何禁止快进合并?

Gitolite-如何禁止快进合并?,git,gitolite,Git,Gitolite,我试图在我们的办公室采用git分支策略,但它要求所有合并都不使用快进。由于我们都使用不同的工具来处理git,我想知道是否可以将Gitolite配置为禁止使用快进合并进行推送? 甚至有可能检测到这种合并吗 git config merge.ff false 看 不,无法检测,因为它根本不是合并。您可以检测到推送到gitolite的主要提交是合并提交(例如:至少有两个父级的提交) 您可能可以在服务器端的中执行此操作: 如果分支名称(第一个参数)与受保护的分支之一匹配 检查推式提交(第三个参数)是

我试图在我们的办公室采用git分支策略,但它要求所有合并都不使用快进。由于我们都使用不同的工具来处理git,我想知道是否可以将Gitolite配置为禁止使用快进合并进行推送? 甚至有可能检测到这种合并吗

git config merge.ff false


不,无法检测,因为它根本不是合并。

您可以检测到推送到gitolite的主要提交是合并提交(例如:至少有两个父级的提交)

您可能可以在服务器端的中执行此操作:

  • 如果分支名称(第一个参数)与受保护的分支之一匹配
  • 检查推式提交(第三个参数)是否有两个父级

也许您可以制作一个别名,其中包括
--无ff
?但不确定如何在整个团队中强制执行。在您对LeGEC回答的评论中,您说定期提交是可以的。那我就不明白你的意思了。我怀疑phd所说的是真的,不可能检测到,但我进一步建议,这实际上意味着你没有100%清楚要阻止什么,因为它实际上是不可定义的。@Mort我不希望用户使用快进合并分支,我要求他们始终创建合并提交,以将其保留在历史中。由于使用了大量工具,而且很好,仅仅因为我们是人类,我们会犯错误,我想知道是否有可能在我们用于存储库管理的gitolite上检测并防止这种情况。也许你的意思是你不想让他们重新定基?我希望有可能定期提交,所以我不能拒绝所有非合并提交。我想博士的答案仍然有效。不过谢谢,如果我只希望合并,这就可以了。