Git Push -f 命令详解

不小心把一些错误代码提交到仓库了。 如果每个人直接更新的话,会导致错误代码也更新到本地了。

这个时候想要避免这种情况的发生,唯一可以做的就是将那些错误代码直接覆盖掉。

git push -f origin master

git push -f 这个命令的作用是将自己本地仓库的代码直接推送至仓库,完全以你的提交为准,之前其他人的提交都会被覆盖。

那么这么可怕的命令,究竟在什么情况下才适用呢?

使用时机 有两种情况下适合使用这个命令:

1.确定需要覆覆盖提交,就像上面的那种情况,在明确部分提交会导致异常时,可以使用新的提交去覆盖。

2.需要整理历史提交记录时,有时候项目的 Commit Logs 可能比较乱,不能清晰的看出每一次提交的作用,可以使用 rebase 命令来清理历史提交记录。因为改变了历史,所以正常来说是 push不成功的,所以需要使用 force push来解决这个问题。

万一自己的代码被覆盖掉了,还救得回来吗? 其实也是有办法的,那就是换你或是其它有之前提交的同事,再次进行 git push -f,将正确的内容强制提交上去,覆盖上一次git push -f所造成的灾难。

Comments: 0

「人生在世,留句话给我吧」

提交评论