【发布时间】:2021-01-30 23:28:19
【问题描述】:
简介:我们是一个由 10 人组成的团队,积极致力于一个项目。更新经常发布,并且在将更改发布到我们的 GitHub 存储库后,该分支立即与远程 master 分支过时,无需在其上运行 CI/CD 和其他所有内容得到更新。
例如,我正在开发一个 feature 分支,将其推送到远程存储库,并打开一个新的拉取请求。但是我无法提前知道我的分支是否根据master进行了更新。在每次推送之前,我需要手动更新本地 master 分支并做一个 rebase。
为了减少操作,我想设置一个git pre-push hook,它会自动检查我要推送的当前分支是否相对于主分支过时 - 如果是,请取消推送.
在 GitHub 页面上显示此消息:This branch is out-of-date with the base branch
任何想法如何获取此信息并取消推送到远程?谢谢。
【问题讨论】:
-
如果分支的上游不是最新的,你无论如何都不能推送 -
git阻止你并显示错误消息 updates were rejected。如果您需要更多,请参阅stackoverflow.com/a/17938274/7976758 以及链接问题中的所有其他答案。