【发布时间】:2017-09-19 22:10:51
【问题描述】:
我想知道强制推送和普通推送有什么区别,在什么情况下我应该在 git 中强制推送?强制推送到 master 分支是一个好习惯吗?
【问题讨论】:
我想知道强制推送和普通推送有什么区别,在什么情况下我应该在 git 中强制推送?强制推送到 master 分支是一个好习惯吗?
【问题讨论】:
如果您在公共存储库中工作,强制推送是一种极具威胁性和风险的方法。使用这种强制推送,您应该能够将本地版本强制到远程存储库。
但是强行推送到远程仓库并不是一个好习惯。如果有冲突,可以使用普通推送解决提交之间的冲突。
【讨论】:
仅当您需要用本地历史记录替换远程历史记录时才强制推送。
当您重写本地历史记录时会发生这种情况,通常是through a git rebase。
例如,如果您只是推送了一个不正确的提交,并在本地进行了修改,那么使用 push --force 可以帮助纠正最近推送
如果你是唯一一个在你强制推动的分支上工作的人,这没什么大不了的。
如果你不是唯一的,那么你需要清楚地沟通,以便其他用户将他们自己的本地分支重置到新的远程。或者您首先需要避免强制推动。
强制推送到主分支是一个好习惯吗?
通常,这不是一个好习惯(同样,除非您是唯一使用远程仓库的人)。
并且不要忘记,一旦分支被强制推送...you cannot know who did the push --force。
【讨论】: