我已经使用Git删除了一个文件然后提交,因此该文件不再在我的工作副本中.我想查看该文件的内容,但实际上并没有恢复它.我怎样才能做到这一点?
CB *_*ley 139
git show HEAD^:path/to/file
Run Code Online (Sandbox Code Playgroud)
您可以使用显式提交标识符或HEAD~n查看旧版本,或者自删除以来是否有多个提交.
Lou*_*uis 47
如果这是您之前删除的文件并且不想搜索修订版,则可以使用(该文件foo在此示例中命名;您可以使用完整路径):
git show $(git rev-list --max-count=1 --all -- foo)^:foo
Run Code Online (Sandbox Code Playgroud)
在rev-list调用查找的所有修订foo,但只列出一个.由于rev-list列表按时间倒序排列,因此它列出的是最后一个更改的修订版本,foo即删除的提交foo.(这是基于git不允许更改已删除文件但仍保持删除的假设.)您不能只使用按原样rev-list返回的修订,因为那里不再存在.你必须要求它之前的那个包含文件的最后一个版本,因此在.foo^git show
由于你可能不记得确切的路径,你可以从git log获取sha1然后你可以简单地发出
git cat-file -p <sha1>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21537 次 |
| 最近记录: |