误更新了master上面的代码怎么办?

我有自己的分支 误传到master分支上了 多了2个没用的文件 现在怎么办?

阅读 4.1k
6 个回答

找到你误传之前的master最后一个commit的hash,然后在本地执行

git reset --hard 指定哈希
git push origin master --force

这样就可以强制回退远程master到指定的哈希了

如果是在本地,没有 push 上去,本地 revert 就好。如果需要保留提交,先 cherry-pick 到另一个分支,再从 master 上 revert。

如果已经 push 上去了,除了可以 revert,还可以这样:

  • 在 master 误提交的分支上的前一个提交上创建新分支,比如 main
  • 确认无误之后将 master 分支更名为 legacy(或别的)
  • 把 main 更名为 master

上述操作主要是在服务器上。如果不能在服务器上进行更名操作(多半都不能),就在本地干,然后把服务器的 master 删掉之后所本地的推上去。


已参与了 SegmentFault 思否社区 10 周年「问答」打卡 ,欢迎正在阅读的你也加入。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进