Git - 推送时自动变基

Saz*_*han 5 git push pull rebase gerrit

在处理 git 项目时,我想在git pull --rebase每个git push. 然而,我团队中的一些开发人员经常忘记在推送之前打电话git pull --rebase。因此,Git/Gerrit 自动执行合并,这会创建格式错误的提交消息。我想避免这种自动合并。

我想配置客户端 git ,以便当开发人员运行 a 时git push, agit pull --rebase应该自动发生。有什么办法吗?

mer*_*011 4

告诉所有开发人员在克隆后将以下内容添加到他们的.git/config文件中。然后要求他们全部使用git goodpush而不是git push.

[alias]
        goodpush = "!git pull --rebase && git push"
Run Code Online (Sandbox Code Playgroud)

此配置也可以放置.gitconfig在用户主目录的文件内,以避免对每个克隆的存储库执行此操作。

请注意,由于此处讨论的原因,别名不能是push,因此您将不得不提供一些激励措施或培训您的开发人员不再直接使用。push

从好的方面来说,由于每当有人push意外使用时您都会收到格式错误的提交消息,因此如果发生这种使用,您将立即知道该与谁交谈。