繁体   English   中英

对于文件,我该如何回到Git的先前版本?

[英]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^ (如果你已经知道,在你们感兴趣的是当前头的第一父)。

1rev: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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM