我正在检查我的代码,因为我需要使用此命令追溯到几天前的错误:
git checkout 35edc63
git checkout 3d09bbc
git checkout e450a0a
基本上,我从一个提交跳转到另一个提交,以检查哪个提交导致了错误。
一旦我发现了这个bug,我就无法回到主提交,我试图用这个命令回到主人:
git checkout master
这是错误信息:
error: Entry 'error_log' would be overwritten by merge. Cannot merge.
我也试图删除'error_log'文件,但仍然无法回到master。我做错了什么?谢谢。
答案 0 :(得分:1)
对您所在的最后一个分离提交进行硬重置,然后从那里检出master
分支:
git reset --hard e450a0a
git checkout master
如果您的工作目录中仍有任何文件,请执行以下操作:
git clean -f -d
免责声明:此答案假定您不希望保留您可能做出的任何更改。因此,它可以安全地避免查看其他提交内容,但如果您想保留已完成的任何工作,这是另一个故事。
答案 1 :(得分:0)
尝试此命令
git reset HEAD --hard
使用此命令,它将重置为同一分支上的最新提交,如果您需要最新的master,请在重置的分支上执行以下命令
git pull origin master