如果我对file.txt进行更改
然后git add file.txt
然后我做了更多改为file.txt
然后我再次git add file.txt
我意识到我在第二次更改/编辑文件时犯了一个错误。你能回到我最初上演的文件版本吗?
答案 0 :(得分:5)
是的,从理论上讲,对象仍在.git/objects
中,直到下次git gc
运行(在某些其他操作后自动发生)。
不幸的是弄清楚哪个对象可能很棘手。如果最近编辑并添加了文件,那么时间戳将有所帮助。
ls -lrt .git/objects/*/* | tail
-r--r--r-- 1 ams users 6976 Apr 6 19:53 .git/objects/0c/3546bd9101264cd6a9fb1fb54cea04c6e0a4b8
如果您看到一个带有可能时间戳的文件,那么您可以检索如下内容:
git show 0c3546bd9101264cd6a9fb1fb54cea04c6e0a4b8
答案 1 :(得分:1)
正如J. Titus在评论中所说:
你从未承诺过产生参考,所以没有。