【问题标题】:I used git reflog and git reset on commit, have I negatively effected someone else's branch?我在提交时使用了 git reflog 和 git reset,我是否对其他人的分支产生了负面影响?
【发布时间】:2020-03-18 21:48:41
【问题描述】:

我做了:

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

我是否因此破坏了其他人的分支/提交历史记录?

【问题讨论】:

    标签: git workflow


    【解决方案1】:

    没有。到目前为止,这一切都发生在您的本地存储库副本上。

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

    【讨论】:

      猜你喜欢
      • 2014-04-07
      • 2019-05-03
      • 1970-01-01
      • 1970-01-01
      • 2014-11-11
      • 1970-01-01
      • 2020-10-19
      • 2016-12-17
      • 2021-09-19
      相关资源
      最近更新 更多