我正在使用Git跟踪虚拟机的XML配置更改。许多XML配置都是类似的,只有少数字段不同。我经常删除VM配置并添加新配置。将这些更改添加到repo时,Git会将其视为文件重命名,只需进行一些更改。我可以看到为什么git会这样做,并理解它的用例。
我想知道是否有办法防止这种情况,而是让git将其视为文件删除而不是创建新文件。查看提交日志时,可以更容易地辨别“哦,看起来就像这一天我删除了这个VM并创建了一个新的”
答案 0 :(得分:11)
重命名只是输出中显示的内容,在内部它们被存储为常规删除和创建。
如果要禁用重命名检测,可以使用--no-renames
选项:
git log --stat --no-renames
(也适用于git diff
,git show
等。)
如果您不想一直添加此选项,可以将其添加到配置中:
git config diff.renames false
答案 1 :(得分:3)
别担心,Git只是将更改显示为重命名,因为看起来像重命名一样。它不是将它存储为重命名,因为Git无法做到这一点。重命名检测在提交显示时发生,而不是在记录时发生。
即使您默认启用重命名检测,也可以使用git show --no-renames
来避免重命名。