在重新定义更改时,我注意到Git在“git commit --amend”之后打印了以下内容:
11 files changed, 427 insertions(+), 2067 deletions(-)
rewrite include/File1.h (71%)
rename include/{File1.h => File2.h} (75%)
rewrite dir1/File1.cc (86%)
rename dir1/{File1.cc => File2.cc} (80%)
然而,当我运行git log -1 --stat后,它不会显示重命名:
include/File1.h | 160 +------
include/File2.h | 166 ++++++
partition/File1.cc | 1081 ++--------------------------------------
partition/File2.cc | 1031 ++++++++++++++++++++++++++++++++++++++
有没有办法看到没有变基的重命名?
答案 0 :(得分:5)
试试git log -1 --stat -M
。 -M
标志指示git log
查找重命名。同样,-C
标志也会查找副本。
如果找不到您想要的重命名,您还可以调整阈值。例如,git log -1 --stat -M70%
会将与已删除文件至少70%相似的任何新文件视为重命名(同样适用于副本的-C
)。我相信默认值是50%。
如果您总是想要这种行为,可以设置配置变量diff.renames
。如果设置为true
,则始终会检测重命名,如果设置为copy
或copies
,则始终会检测到副本。