git中Maven项目的文件夹和文件重构

时间:2013-01-27 13:30:30

标签: git maven

我是git的新手。我在一个中央git存储库中有一个maven项目。

目前项目看起来像这样:

   Root
      |
      project
            |
            src/
            target/
            .project
            .gitignore
            .classpath
            .settings/
            pom.xml

我想重新构建文件夹,以便所有文件和文件夹都在Root下,而不是在项目名称下。 我想进行重组的主要原因是我用于制作版本的Nexus机器表示无法找到pom.xml

我在git中看了一个类似的项目,它看起来和我想要的一样,并且在Nexus中运行良好。

我尝试使用git mv命令移动文件和文件夹,但它拒绝移动任何文件夹。我设法使用mv移动pom.xml但是项目无法完成pom.xml并且我在Eclipse中有很多错误。

1 个答案:

答案 0 :(得分:0)

假设,Root目录是git项目的根目录。可以使用git rev-parse --show-toplevel命令验证它。

Java项目包含两种类型的文件 - 由git管理,不由git管理(在git status输出中标记为未跟踪)。

因此,要将项目从Root/project/目录移动到Root目录:

1)使用git mv移动跟踪的文件: 如果跟踪的文件为src/*pom.xml.gitignore

git mv project/src/* ./src/
git mv project/pom.xml ./
git mv project/.gitignore ./

2)使用mv移动未跟踪的文件:

Git正在处理应用于文件而不是目录的补丁。这就是git将Root/project/src/目录留空的原因。删除它。

$> mv project/* ./ -v
‘project/target’ -> ‘./target’

顺便说一下,.gitignore目录中Root/project/存储在Root目录中的文件很奇怪。