很难不按预期工作
我试图检查存储库的历史。 我停止了一段时间,希望将存储库返回给特定的提交。 我搜查了,我做了
git reset --hard 12345
我得到了HEAD现在是12345的消息。我打开文件夹查看我想看到的文件,但没有改变!
我希望在该文件首次创建时回到2009年。 但是该文件是在新版本中(在2010年编辑之后)。
我检查了工作目录,但没有任何内容。 我也跑了
git clean -f -d
但没有任何改变。
我不知道现在该怎么做。 我想回过头来看看文件是怎么样的,但我想回到整个存储库。
公平起见,我不明白你做了什么后,你的回购
git reset --hard 12345
应该强调的是,你通常应该避免“git reset --hard”命令。 风险是失去任何你未经承诺的改变,并且最终会以悬而未决的方式提交。 如果你想抛弃commit 12345之后所做的所有提交,那么你真的会使用该命令。我邀请你阅读关于git reset的这个主题--hard
在你的情况下,我实际上已经创建了一个临时分支“temp_branch”,它指向提交12345.该命令将
git checkout -b temp_branch 12345
这会将repo切换到新分支“temp_branch”,其头部将为12345.新分支的创建不是强制的,但是如果需要从该提交进行更改,我觉得它很方便。
如果您只想在提交时查看内容,请勿使用重置。 重置是为了移动分支,你可以让自己陷入麻烦。 只需检查一下, git checkout 12345
。 然后,您可以再次使用checkout返回到您所在的位置, git checkout master
(或任何分支)。
至于你的文件没有被更改,你确定它的不同在提交? 用git diff 12345 branch_name -- filename
。
上一篇: hard not working as expected
下一篇: What Are Some Actions In Git That Are Difficult/Impossible to Undo?