在服务器端钩子上强制执行git merge.ff false

时间:2015-07-20 13:47:03

标签: git merge

我们的git工作流程要求我们始终创建合并提交,即使它是快速合并(简化历史读取而不诉诸rebase)。

虽然约定很好(“请运行'git config -add merge.ff false'”),但我想使用钩子在我们的git服务器上强制执行这种逻辑。我试着考虑逻辑而陷入困境。关于如何实现这种逻辑的任何线索?任何现成的脚本?

1 个答案:

答案 0 :(得分:1)

把它放在hooks / update中:

if [[ "$1" = "refs/heads/master" ]]
then
  if [[ $(git log --oneline $2..$3 --no-merges --first-parent | wc -l ) -gt 0 ]]
    then 
      exit 1
    fi
fi