直接看原文:
Git Push -f 命令详解 - 玩转Linux - SegmentFault 思否
--------------------------------------------------------------------------------------------------------------------------------
git push -f
这个命令的作用是将自己本地仓库的代码直接推送至仓库,完全以你的提交为准,之前其他人的提交都会被覆盖。
那么这么可怕的命令,究竟在什么情况下才适用呢?
使用时机
有两种情况下适合使用这个命令:
- 确定需要覆覆盖提交,就像上面的那种情况,在明确部分提交会导致异常时,可以使用新的提交去覆盖。
- 需要整理历史提交记录时,有时候项目的 Commit Logs 可能比较乱,不能清晰的看出每一次提交的作用,可以使用
rebase
命令来清理历史提交记录。因为改变了历史,所以正常来说是push
不成功的,所以需要使用force push
来解决这个问题。