[英]For a file, how do I go back to a previous version in Git?
对于当前文件,我想“返回”到版本__。 如何在Git中做到这一点?
我不希望该版本成为我的最新负责人。 我只想看看当时有什么代码。
如果您不想覆盖工作树中的版本,请使用git show
:
git show rev:path/to/file
rev
通常是可以解析为commit 1的任何表达式(请参见git-rev-parse(1)中的“ Specifications Revisions”部分)。
path/to/file
应该是目标path/to/file
的路径(从存储库的顶层开始)。
例如,从“修复错误”提交中显示src/config.c
:
% git log --oneline
7c07566 second feature
bbdbea8 fix bugs
1cf42c8 first feature
82cfa1d initial commit
% git show bbdbea8:src/config.c
bbdbea8
也可能是对象的全称( bbdbea801c2a465a8c509befa46174bad4fd9fd4
在我的测试库),或表达HEAD~
和HEAD^
(如果你已经知道,在你们感兴趣的是当前头的第一父)。
1在rev:path
语法中, rev
不必是“ commit-ish”,它可以是任何“ treeish”(路径从指定的树开始而不是从顶层开始)。
Git还可以比较文件的不同版本,而不必显式提取每个文件:
显示自bbdbea8以来对src/config.c
进行的累积更改:
git diff bbdbea8 -- src/config.c
或者,有时仔细查看历史记录很有用。 显示自bbdbea8以来对src/config.c
所做的每个更改:
git log -p --reverse bbdbea8.. -- src/config.c
尝试以下操作,仅检查文件的特定版本
git checkout revision -- filename
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.