Intellij在Git repo中移动删除历史记录



在Intellij中,我在包之间移动文件,git似乎会删除并重新添加文件。我如何使Intellij git mv关于阶级运动?

Git实际上并没有"移动文件"的概念;CCD_ 2命令只是删除和重新添加(加上在文件系统中实际移动文件)的简写。您可以告诉一些git命令尝试检测重命名/移动(通过提供相似性阈值),但无法在存储库中记录文件x已移动到y。

但是,许多git命令能够跟踪移动文件之间的更改,只要在同一提交中进行添加+删除即可。例如,git blame -C <filename>将显示每一行的原始作者,与上次移动文件的人无关。

来自其他问答;关于git mv,似乎Linus Torvalds在这里丢了球——尽管他坚称这是故意的。

好吧,为了避开这个我们能做的最好的过程是

  • 仅创建git commit以移动/重命名目录

git似乎能够使用--follow来跟踪这一点,Intellij也能够解决这一问题。

请注意,混合和匹配文件git mv更新是一个失败的配方,无论是git还是Intellij。

最新更新