2014-10-20 85 views

回答

1

如果你的工作目录仍然存在,并且它包含一个.git子目录,那么你可以使用git reset --hard HEAD,它将从HEAD指示的当前git提交重新创建工作目录。

你的问题看起来像添加上游你添加了一个额外的参数。您需要:

git remote set-url origin https://... 

git remote add origin https://.... 
0

中取出后,取决于你的资料库的状态:

  1. 如果git status没有显示要保留的任何变化,那么您可以简单地将存储库恢复到上次提交:git reset --hard HEADgit reset --hard(HEAD指向的提交是默认参数)

  2. 如果您想要保留的更改已添加到索引git add,那么这两个更改和文件的删除都将位于索引中。在这种情况下,您必须手动分开这些更改。例如,您可以对包含要保留的更改的文件执行git reset --soft -- <path_to_file>。然后你用git stash --keep-index隐藏非暂存文件。然后,您将存储库恢复为最后一次提交git reset --hard。最后,您重新应用您事先用git stash apply收藏的更改。检查一切是否很酷,并用git stash drop删除隐藏的信息。

  3. 如果您想要保留的更改尚未添加到索引中,请使用方法#2并忽略第一个阶段(对要保留的更改进行软重置)。

请注意,如果在删除之前删除的文件有任何修改,那么您将无法使用Git恢复它们。

题外话:我不太明白你最初的意图是什么,但也许git rm --cached是你正在寻找的命令。

希望这有助于

0

嗨,我得到的答案和检索的文件 所以我也

git的状态

这表明修改被提交 然后unstage提交我执行

git reset HEAD

你必须执行上面的命令与文件名

所以上面的命令未分级的所有更改,然后

git的状态

这表明没有上演更改提交

git的结帐 -

,你必须执行上面的命令与文件名

所以我回来了我所有的文件

有关进一步说明,您可以看到 http://www.linuxquestions.org/questions/programming-9/accidantally-deleted-project-with-git-rm-how-to-get-it-back-773539/