Git - 推动时自动变基
Git - Auto rebase while pushing
在处理 git 项目时,我想在每个 git push
之前 运行 一个 git pull --rebase
。但是,我团队中的一些开发人员经常忘记在推送之前调用 git pull --rebase
。因此,Git/Gerrit 自动执行合并,这会创建格式错误的提交 message.I 希望避免这种自动合并。
我想配置客户端 git 以便当开发人员 运行 一个 git push
时,一个 git pull --rebase
应该自动发生。有什么办法吗?
告诉所有开发人员在克隆后将以下内容添加到他们的 .git/config
文件中。然后要求他们全部使用 git goodpush
而不是 git push
.
[alias]
goodpush = "!git pull --rebase && git push"
此配置也可以放在用户主目录中的 .gitconfig
文件中,以避免为每个克隆的存储库都这样做。
请注意,别名 不能是 push
,原因已讨论 here,因此您必须提供一些奖励或培训您的开发人员不再直接使用 push
。
从好的方面来说,由于每当有人不小心使用 push
时您都会收到格式错误的提交消息,因此如果发生此类使用,您将立即知道该与谁交谈。
在处理 git 项目时,我想在每个 git push
之前 运行 一个 git pull --rebase
。但是,我团队中的一些开发人员经常忘记在推送之前调用 git pull --rebase
。因此,Git/Gerrit 自动执行合并,这会创建格式错误的提交 message.I 希望避免这种自动合并。
我想配置客户端 git 以便当开发人员 运行 一个 git push
时,一个 git pull --rebase
应该自动发生。有什么办法吗?
告诉所有开发人员在克隆后将以下内容添加到他们的 .git/config
文件中。然后要求他们全部使用 git goodpush
而不是 git push
.
[alias]
goodpush = "!git pull --rebase && git push"
此配置也可以放在用户主目录中的 .gitconfig
文件中,以避免为每个克隆的存储库都这样做。
请注意,别名 不能是 push
,原因已讨论 here,因此您必须提供一些奖励或培训您的开发人员不再直接使用 push
。
从好的方面来说,由于每当有人不小心使用 push
时您都会收到格式错误的提交消息,因此如果发生此类使用,您将立即知道该与谁交谈。