Java项目.gitignore最佳实践

Java项目.gitignore配置例子

# Default ignored files

# Compiled class file
*.class

# Log file
*.log

# BlueJ files
*.ctxt

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*

/target/

HELP.md
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/

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

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

### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/

### VS Code ###
.vscode/

注意事项

.gitignore最好在代码首次提交前配置好,避免已经被track的文件即使符合.gitignore的匹配规则也无法生效

.gitignore文件最好在仓库根目录,以及每个子模块的根目录位置都配置一份

假如由于.gitignore配置失误,导致仓库项目中IDEA的配置(如.idea文件夹,iml文件)部分缺失,在再次重新拉取代码时,可能导致IDEA找不到类等问题。遇到这种问题,可以把IDEA本地和远端仓库的所有iml文件和.idea文件夹全部删除,修改好.gitignore文件,然后重启IDEA并刷新缓存,IDEA会重新生成完整的配置文件。或者在具体缺失IDEA配置的目录下,执行mvn idea:module,重新生成iml文件