Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 如何从失败的签出和混乱的当前分支恢复_Git - Fatal编程技术网

Git 如何从失败的签出和混乱的当前分支恢复

Git 如何从失败的签出和混乱的当前分支恢复,git,Git,我尝试将分支切换到以前的分支p,但命令失败,现在我的一些源来自当前分支C,而其他源来自我希望切换到的分支p;“正式”我仍然在C分支。我如何才能清除因签出失败而造成的混乱,并将C分支恢复到上次提交。删除所有文件,然后运行 git reset --hard HEAD 注意:未跟踪的文件将丢失git reflog显示更改的历史记录。在事情变得一团糟之前,从你的shas上创建分支。你真的是说我应该在运行get reset之前删除所有文件吗?我在没有删除任何文件的情况下运行了该命令,但收到错误消息致命:

我尝试将分支切换到以前的分支p,但命令失败,现在我的一些源来自当前分支C,而其他源来自我希望切换到的分支p;“正式”我仍然在C分支。我如何才能清除因签出失败而造成的混乱,并将C分支恢复到上次提交。

删除所有文件,然后运行

git reset --hard HEAD

注意:未跟踪的文件将丢失

git reflog显示更改的历史记录。在事情变得一团糟之前,从你的shas上创建分支。你真的是说我应该在运行get reset之前删除所有文件吗?我在没有删除任何文件的情况下运行了该命令,但收到错误消息致命:无法在“foo”处创建目录:权限被拒绝现在看来您对根访问权限做了一些操作。更不寻常的是,我的文件系统上没有目录foo。因为git保留所有已提交文件的所有版本的历史记录!文件,保存起来就是为了搞乱它们。您始终可以签出任何文件的任何版本。使用git丢失提交的数据并不是那么容易: