【发布时间】:2016-11-17 06:18:44
【问题描述】:
当我在存储库中移动跟踪文件时,git 在提交信息中显示“文件 xxx 从 yyy 重命名”。
现在我正在尝试压缩两个提交,其中文件在第一次提交中被删除并在第二次提交中再次添加(在不同的目录中)。在结果提交中,我没有看到“重命名”,只有“删除”和“添加”。
如何帮助 git 理解这一点并为这个文件显示“重命名”?
【问题讨论】:
标签: git
当我在存储库中移动跟踪文件时,git 在提交信息中显示“文件 xxx 从 yyy 重命名”。
现在我正在尝试压缩两个提交,其中文件在第一次提交中被删除并在第二次提交中再次添加(在不同的目录中)。在结果提交中,我没有看到“重命名”,只有“删除”和“添加”。
如何帮助 git 理解这一点并为这个文件显示“重命名”?
【问题讨论】:
标签: git
Git 动态发现(检测)重命名,在它进行比较时。
有许多选项可以控制 Git 是否尝试,如果是,它认为“足够相似”以使其认为文件已重命名。
如何让 Git 以重命名的形式呈现某些内容取决于:
git diff 开启重命名检测。git merge 启用重命名检测,即使在旧版本的 Git 中也是如此。 git status 命令总是进行重命名检测。git status 始终启用检测,但它没有配置阈值。diff.renames 覆盖Git 的git diff 启用/禁用默认值,并通过设置diff.renameLimit 覆盖其重命名检测队列中的最大文件数。关于git diff 的重命名检测(特别是 Git 用于跨两次提交确定文件身份的方法)的(更多)更多信息,请参阅Git Diff of same files in two directories always result in "renamed"。
【讨论】: