在IntelliJ中添加Maven框架支持后,它将所有/ src / com / ...文件移动到/ src / main / java / com / ...而不更新git历史记录。如何解决?

时间:2017-06-05 16:17:24

标签: java git maven intellij-idea

我将Maven支持添加到以前没有它的项目中。然后IntelliJ移动了所有的java文件,但即使它是一个git项目,也没有使用git mv,因此没有文件历史记录。

我该如何解决这个问题?

示例:

//The below structure was before Maven
/src
.../com
    .../test
        .../SomeClass.java

//After Maven
/src
.../main
    .../java
        .../com
            .../test
                .../SomeClass.java

1 个答案:

答案 0 :(得分:2)

重命名不是Git中的一等公民。 Git根据文件内容的变化检测重命名。 因此,git mv的主要目的是简化分期。 如果文件在没有git mv的情况下重命名, 这只会造成轻微的不便, 您可以通过适当的git add命令进行纠正。 也就是说,对于每个重命名的文件,一个git add用于旧名称("已删除的文件"从Git的角度来看),一个git add用于新名称(&#34) ;新文件"从Git的角度来看。)

在你的特定例子中, 一个简单的修复可以通过在项目根目录运行git add .来暂存所有内容。 之后,检查git status -sb的输出。 Git很有可能找出所有的重命名。