【发布时间】:2020-03-18 21:48:41
【问题描述】:
我做了:
- 提交到错误的分支
- Git 重置硬 HEAD~1
- 我丢失了更改的文件,所以我运行了 git reflog
- 然后我 git reset [commitId] - 我意识到那不是我的提交,所以我把它藏起来了...
我是否因此破坏了其他人的分支/提交历史记录?
【问题讨论】:
我做了:
我是否因此破坏了其他人的分支/提交历史记录?
【问题讨论】:
没有。到目前为止,这一切都发生在您的本地存储库副本上。
使用 Git,您可以获得远程存储库的完整副本,包括所有提交。你在这个本地副本上工作,然后git push你对远程的更改,git pull他们对你的更改。其他所有命令只会影响您的本地存储库。
即使你现在要去git push,Git 也会阻止你,因为你的本地版本的分支已经“发散”了,这意味着将你的新提交放在他们的之上不再是一件简单的事情。只是不要养成git push --force的习惯。
修复错误更改的分支的最简单方法是将其返回到其远程版本。假设你的遥控器是origin...
git branch -f some_branch origin/some_branch.
有关更多信息,请参阅 Pro Git 手册中的 "Working With Remotes" 和 "Remote Branches"。
【讨论】: