멀티 모듈 프로젝트에서 gitignore 설정

날아올라돼지야·2024년 9월 12일

인텔리제이에서 멀티 모듈 프로젝트를 구성할 때, .gitignore 파일은 루트 디렉토리에 하나만 두는 것이 일반적입니다. 루트 디렉토리에 있는 .gitignore 파일이 하위 모듈의 파일들도 적용 범위에 포함하므로, 모듈별로 .gitignore 파일을 따로 둘 필요는 없습니다.

1. .gitignore 파일을 루트 디렉토리에 두는 이유

  • .gitignore 파일은 상위 디렉토리에서 정의하면 하위 디렉토리에도 적용됩니다. 즉, 루트 디렉토리에 .gitignore 파일을 두면 하위 모듈에도 자동으로 동일한 규칙이 적용됩니다.
  • 프로젝트 구조가 복잡하더라도, 한 곳에서 모든 불필요한 파일을 관리할 수 있기 때문에 더 간결하고 관리하기 쉽습니다.

2. 기본적인 .gitignore 파일 설정

Spring Boot + IntelliJ 멀티 모듈 프로젝트에서 기본적으로 Git에 포함하지 않아야 할 파일들은 다음과 같습니다.

IntelliJ 관련 설정 무시

# IntelliJ IDEA
.idea/
*.iml
*.iws
out/

Gradle 관련 설정 무시

# Gradle
.gradle/
build/
!gradle-wrapper.jar
.gradle/cache/
.gradle/daemon/
.gradle/workspace/
.gradle/buildOutputCleanup/
!gradlew
!gradlew.bat

Maven 관련 설정 무시 (Maven을 사용하는 경우)

# Maven
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
log/

Spring Boot 관련 설정 무시

# Spring Boot
logs/
*.log

환경 설정 파일 무시 (보안 정보)

보안 정보가 포함된 설정 파일은 반드시 무시하는 것이 좋습니다. 예를 들어 application.yml 파일에 데이터베이스 비밀번호나 API 키가 포함되어 있다면, 그 파일을 버전 관리 시스템에 올리지 않는 것이 좋습니다.

# 환경 파일
application.yml
application-*.yml
application.properties
application-*.properties
.env

OS 및 IDE 관련 설정 무시

# MacOS
.DS_Store

# Windows
Thumbs.db

Java 관련 파일 무시

# Java
*.class

3. .gitignore 예시 (멀티 모듈 프로젝트용)

# IntelliJ IDEA
.idea/
*.iml
*.iws
out/

# Gradle
.gradle/
build/
!gradle-wrapper.jar
.gradle/cache/
.gradle/daemon/
.gradle/workspace/
.gradle/buildOutputCleanup/
!gradlew
!gradlew.bat

# Maven
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
log/

# Spring Boot
logs/
*.log

# 환경 파일
application.yml
application-*.yml
application.properties
application-*.properties
.env

# OS 및 IDE
.DS_Store
Thumbs.db

# Java
*.class

.gitignore 파일을 프로젝트의 루트 디렉터리에 두면, 각 모듈에서 불필요한 파일들이 자동으로 무시되며, 다른 개발자와 협업할 때도 클린한 환경을 유지할 수 있습니다.

profile
무슨 생각하며 사니

0개의 댓글