我想查看一个文件的内容,该文件在重命名之前已被提交(当然要自动检测)。
使用git log --follow foo_renamed.txt
和git show master~20 foo_original_name.txt
,我可以确认git能够跟踪文件重命名,并且该文件存在于master~20
中。但是,
git show --follow master~20:foo_renamed.txt
并且
git show -M master~20:foo_renamed.txt
两种方法都失败了,错误信息如下:
致命错误:路径“foo_renamed.txt”存在于磁盘上,但在“master~20”中不存在。
这其实是有道理的,因为对象规范是一个<rev>:<path>
的 blob,但是git show
没有-- /file/path
选项。还有其他的办法吗?谢谢。