暂时,我需要与用户 un 友好的图形IDE一起工作。
我想促进某些模块的重命名/移动,但是在后端,IDE创建了带有几个二进制文件的模块。使用git mv
重命名拼写错误的模块后,我的上一次编译失败。
我的猜测是在二进制文件中有我看不见的路径引用。
在我的IDE中,通过创建一个新模块,复制粘贴内容并删除旧模块(在IDE中都是如此)来简化此过程就足够了。
可悲的是,这一举动打破了git的历史,我想保持这一点。有没有一种方法可以进行这种伪类型的文件移动/重新命名,然后在事实告诉git它们相同之后再将它们重新绑定在一起?
答案 0 :(得分:1)
Git并不真正了解文件重命名。您可以按照自己的描述进行操作(剪切旧文件的全部内容,然后粘贴到新文件中),当git rm
旧文件和git add
新文件时,git status
会说您重命名了该文件。
但是,我想您的目标是能够向Git询问新文件名的历史记录,并让它在重命名之前向您显示旧文件的历史记录。 Git并没有以您可能希望的方式完全支持此功能,但是git log --follow
中有一个“ hack”试图做到这一点。此处以及移动文件内容时发生的变化的机制,在此处详细说明:How to REALLY show logs of renamed files with git?