ETC/1. Today I Learned

인텔리제이에서 .idea 설정 파일 프로젝트에서 제거하기

montmer27 2025. 12. 2. 15:47

문제 상황

인텔리제이로 코딩 진행 중, .idea 폴더가 포함되어 push되었다.

문제는 해당 폴더는 프로젝트 소스 코드와 무관하며, 포함되어 공유될 경우 설정들 간의 충돌을 유발한다는 점이다.

 

이와 같은 이유로 git에 commit할 때는 .idea 폴더를 제외해줘야 한다. 

 

문제 해결 과정

1. 아직 Git에 추가가 안 된 경우

.gitignore 파일에(없으면 루트 디렉토리에 생성) 다음과 같이 명시해주어 해당 폴더를 향후 git 추적에서 제거한다.

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

#추가로 제외할 만한 항목들
out/
target/
build/
.gradle/

 

2. 현재 이미 .idea 폴더가 Git에 추가된 상황 (현재상황)

다음 명령어를 통해 앞으로 관리 대상 파일에서 제외하겠다고 알린다.

공동 프로젝트일 경우 모든 사람들이 이를 똑같이 수행하거나 merge 시 제외해야 한다.

git rm -r --cached .idea
git commit -m "Remove .idea folder from git"

 

추가1) .idea 폴더 전체를 제외하되, 일부 팀에서는 다음 파일들은 공유하기도 합니다:

  • .idea/codeStyles/ (코드 스타일 설정)
  • .idea/runConfigurations/ (실행 구성)
  • .idea/inspectionProfiles/ (코드 검사 프로필)

이 경우 .gitignore를 다음처럼 수정할 수 있다:

gitignore
.idea/*
!.idea/codeStyles/
!.idea/runConfigurations/
!.idea/inspectionProfiles/

이렇게 하면 개인 설정은 제외하고 팀에서 공유할 만한 설정만 Git에 포함할 수 있다.

 

추가) 내용을 수정하고 git status를 했는데 에러 메시지가 뜨는 경우

git의 상태를 조회할 때는 staging area에 올려야 한다.

commit은 add되지 않은 내용은 올릴 수 없다. 

index.html 파일을 수정한 뒤, 바로 git status를 입력해 수정사항을 확인하려고 했을 때 에러 메시지. 변동사항은 인지하고 있지만 git add를 통해 stage되어 있지 않아 commit할 내용이 없다고 한다.