0

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

目前项目看起来是这样的:

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

我想重组文件夹,使所有文件和文件夹都在根目录下,而不是在项目名称下。我想要进行重组的主要原因是我用于构建的 Nexus 机器说pom.xml找不到。

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

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

4

1 回答 1

0

假设该Root目录是您的 git 项目的根目录。可以通过git rev-parse --show-toplevel命令验证。

Java 项目包含 2 种类型的文件 - 由 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/目录 insted 的Root目录中。

于 2013-01-27T14:47:42.137 回答