告诉所有开发人员在克隆后将以下内容添加到他们的.git/config文件中。然后要求他们全部使用git goodpush而不是git push.
[alias]
goodpush = "!git pull --rebase && git push"
Run Code Online (Sandbox Code Playgroud)
此配置也可以放置.gitconfig在用户主目录的文件内,以避免对每个克隆的存储库执行此操作。
请注意,由于此处讨论的原因,别名不能是push,因此您将不得不提供一些激励措施或培训您的开发人员不再直接使用。push
从好的方面来说,由于每当有人push意外使用时您都会收到格式错误的提交消息,因此如果发生这种使用,您将立即知道该与谁交谈。