Git Ignores和Maven目标

ebdffaop  于 2023-11-15  发布在  Git
关注(0)|答案(7)|浏览(141)

任何人都知道是否可以忽略git管理的文件结构中特定目录的所有示例。
我想排除一个maven项目中的所有“target”文件夹,该项目有许多子模块。我知道我可以在顶层的.gitignore中显式地排除它们中的每一个,但我真的希望能够指定一个像**/target/* 这样的模式,让它自动忽略子目录中的示例?
这可能吗?

w1jd8yoj

w1jd8yoj1#

根目录中的.gitignore文件 * 确实 * 适用于所有子目录。我的文件如下所示:

.classpath
.project
.settings/
target/

字符串
这是在一个多模块的maven项目中。所有的子模块都是使用m2eclipse作为单独的eclipse项目导入的。我没有更多的.gitignore文件。事实上,如果你看一下gitignore man page
模式从.gitignore文件中读取,该文件位于与路径相同的目录中,* 或任何父目录中 *.
所以这对你应该有用。

mlmc2os5

mlmc2os52#

可以在.gitignore文件中使用模式。参见gitignore man page。模式*/target/*应该忽略任何名为target的目录及其下的任何内容。或者您可以尝试*/target/**忽略target下的所有内容。

ki0zmccv

ki0zmccv3#

正如Abhijeet在评论中已经指出的那样,你可以添加这样的行:

/target/**

字符串
\.git\info\文件夹中排除文件。
然后如果你想在远程仓库中删除这个target文件夹,你需要先从本地仓库中手动删除这个文件夹,提交,然后推送。这是因为git会显示一个目标文件夹的内容,就像最初修改的一样。

von4xj4u

von4xj4u4#

在gitignore中从所有不需要的文件中添加以下行

/target/
*/target/**
**/META-INF/
!.mvn/wrapper/maven-wrapper.jar

### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache

### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr

### NetBeans ###
/nbproject/private/
/build/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/

字符串

x8goxv8g

x8goxv8g5#

我忽略git中目标文件夹中的所有类。在open .gitignore文件中添加以下行:

  • /*.class

  • /target/**

它对我很有效,试试看。

bfhwhh0e

bfhwhh0e6#

对于**Spring Tool Suite**,将以下忽略资源添加到.gitignore文件并提交到存储库中

*.classpath
*.class
*.prefs
*.jar
*.lst
*.project
*.factorypath
*.original
target/
.settings/
.apt_generated
.sts4-cache
.springBeans

字符串

m528fe3b

m528fe3b7#

对于多模块仓库,除了@Gleidosn answer之外,我还将添加以下表达式以考虑嵌套的目标文件夹:

**/target/

字符串

相关问题