我在提交时使用了git reflog和git reset,是否对其他人的分支产生了负面影响?

时间:2019-11-22 19:38:53

标签: git workflow

我做了:

  1. 在错误的分支上提交
  2. Git重设硬HEAD〜1
  3. 我丢失了更改的文件,所以我运行了git reflog
  4. 然后我git reset [commitId]-我意识到那不是我的提交,所以我将它藏起来了...

我是否因此而破坏了别人的分支/提交历史?

1 个答案:

答案 0 :(得分:2)

不。到目前为止,所有这些都是在您的存储库本地副本上发生的。

使用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"