git pull 使用远程删除我的文件

Kut*_*ren 1 git github

我们是两个人在同一个项目上工作。我的朋友告诉我他已经尽了自己的一份力量并把它推到了 GitHub 上。我的部分今天已经完成了,所以我也想推动。

为了实现这一目标,我想先拉取文件,在本地合并文件,然后再次推回。

当我尝试用他的提交更新我的本地存储库时,我使用了git pull,这导致我所有的工作都消失了,而不是我的文件,出现了他的文件。

我想恢复我的文件,然后用他的文件正确更新我的存储库。

值得一提的是这个过程:我有一个名为“entrance”的本地分支,所以首先,我切换到master,然后git merge entrance合并文件,屏幕上显示了一些内容,所以我认为合并已经完成。所以最后我用了git pull.

Ngu*_*Son 6

如果我遇到这种情况,我会执行以下步骤:

  1. 首先,请确保在提取朋友的代码之前提交您的代码。

  2. 显示reflog通过命令检查历史记录:git reflog输出应该是:

$ git reflog
90abbe3 HEAD@{0}: pull origin master: Fast-forward
3ab3527 HEAD@{1}: commit: q defer all
962e856 HEAD@{2}: commit: getall terms by tax
2d7f20d HEAD@{3}: commit: bug list create
Run Code Online (Sandbox Code Playgroud)
  1. 通过命令重置到之前的提交:git reset --hard HEAD@{1}

  2. 调查我的代码通过使用一些命令消失的原因git diffgit branch..

  3. 最后,找到问题并通过git mergeor再次合并源git pull