如何在Git中检出一个特定版本的文件?
如何在git中检出一个特定版本的文件?
我在邮件列表中发现了这封邮件,其中说:
$ git checkout HEAD~43 Makefile
$ git reset Makefile
但我不明白如何找出'HEAD〜43',如果我做了一个git log aFile
,我怎么才能知道我应该使用哪个'HEAD〜43'?
为什么我需要为该文件运行git reset
? 它有什么作用?
你知道该文件属于什么提交(即:特定的修订版)? 然后做:
git checkout <commit> <file>
另一个命令:
git checkout HEAD~N <file>
是为了当你想从一个范围内得到一个文件的版本(我为怀旧而做)。
HEAD~43
引用文件的提交(版本)。 除此之外,您可以使用从文件上执行git log
获得的提交哈希。 如果你只是想要文件,你不需要运行git reset
; 只有当你想将文件转发到当前HEAD时才有必要。
上一篇: How can I check out a particular version of one file in Git?