2016-11-22 190 views
0

我最近在分支中使用git mv对分支文件夹结构进行了很大改动,导致没有添加/删除的文件只是为了保留历史记录而重命名。Git合并保留mv历史

将此分支合并到其他分支会导致添加/删除所有包含内容更改的文件。

Git显然理解自尝试执行删除/添加以来移动的文件。

如何确保我的文件的历史在与重命名文件合并期间保持不变?

回答

0

Git实际上并不会跟踪重命名,但通过确定删除的文件和添加的文件的匹配程度来推断它们。有一些配置(和命令行选项),可以帮助检测:

[diff] 
    renamelimit = 3000 

您可以通过设置git config --global diff.renameLimit 3000。还有一个merge.renameLimit,但如果未设置,则默认为diff.renameLimit。不幸的是,我找不到任何记录的默认值,但source code似乎表明400是默认限制。

或者你可以看看-l选项git diff以及-M/--find-renames选项。

相关问题