git pull用Remote删除了我的文件

时间:2015-10-27 15:53:43

标签: git github

我们是2个人在同一个项目上工作。我的朋友告诉我他已经完成了自己的职责并将其推送到GitHub。我今天已经完成了所以我也想推动。

要完成,我想先拉,在本地合并文件,然后再将其推回。

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

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

很好地提到了这个过程:我有一个名为“入口”的本地分支,所以首先,我切换到master,然后git merge entrance为要合并的文件,这在屏幕上显示了一些东西,所以我认为合并完成。最后,我使用了git pull

1 个答案:

答案 0 :(得分:1)

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

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

  2. 显示reflog以按命令检查历史记录:git reflog输出应为:

  3. $ 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
    
    1. 通过命令重置为上一次提交:git reset --hard HEAD@{1}

    2. 使用一些命令git diffgit branch ..

    3. 调查我的代码消失的原因
    4. 最后,找到问题并按git mergegit pull

    5. 合并来源agian