我对Git很新,最近开始使用分支机构,但我认为我的概念没有了,现在我遇到了问题。
基本上,我创建了一个devel分支,并创建了功能分支以将小变化合并到devel中。我删除了功能分支中的一些文件,因此在开发中,但现在我意识到我又想要它们。他们可能仍然在掌握,因为我可以在GitHub上在线看到它们,但是当我运行命令“git checkout master”时,许多目录和文件都消失了。我真的不知道为什么会这样。我该如何解决这个问题?
编辑:当我切换回主分支时,其他分支的更改是否可能导致问题?我觉得主分支应该和以前一样。
编辑2:当我在功能分支上工作并执行“git checkout devel”时,看起来像是删除了 - 当我运行此命令时,我在一个深度子目录中,无论出于什么原因,都有一堆“ D ...文件“输出的行,以”Switched to branch“devel'结尾”事实上,当我在分支之间切换时,这种情况会继续发生。
答案 0 :(得分:0)
如果您当前的master
结帐显示已损坏,您可以尝试使用以下内容将其重置为HEAD
或特定提交:
git reset --hard HEAD
这将对上次已知的提交进行硬重置,并且您的分支中的任何工作副本更改(您看起来没有)都将丢失。
如果它仍然无法解决您的问题,您可能需要考虑在新目录中进行新的克隆。
答案 1 :(得分:0)
如果您想重置。
您可以通过调用命令来查看所有提交,并从那里通过调用命令知道您上次提交的所有内容的良好提交
git log
之后,您可以通过调用
重置为已知的良好提交git reset --hard commit_number
但要小心,它将删除该提交后创建的所有当前文件。