본문 바로가기
Error Handling Log

.gitignore 파일에 등록된 파일이 이미 commit되어 있는 경우

by GGShin 2022. 9. 5.

프로젝트를 진행하다가 배포 시점이 되면서 .gitignore를 만들어 몇몇 파일들은 배포되지 않도록 지정해주었습니다.

그 후에 commit을 하려니 아래와 같이 unmerged files 때문에 commit이 되지 않는다는 에러가 발생했습니다.

 

add . 를 하고 commit 시도를 다시해도 안되길래, 혹시나 하고 다른 브랜치로 checkout을 해보려고 했더니 역시 안되었습니다 ㅎㅎ

 

 

.gitignore에 설정된 directory 중에 .idea가 있었는데, 먼저 기존에 commit 되어 있는 .idea 파일들을 내려주어야 한다고 해서

 

# Quit the merge
git merge --abort

# remove the whole folder from the repo
git rm -rf --cached .idea/

 

위와 같이하여 merge 작업을 중단하고 cache에 있는 .idea 디렉토리를 지워주었습니다.

그랬더니 아래와 같이 .idea 내의 파일들이 모두 지워졌다는 표시가 나왔습니다.

이 상태에서 바로 commit을 하면 되는 줄 알았더니 

.gitignore에 설정된 directory 중에 .idea가 있었는데, 이를 move 하거나 remove 하라는 메세지가 나왔습니다.

.idea 디렉토리에는 intellij 사용 시 생성되는 설정이 담긴 파일들이 담겨있다고 합니다. 

삭제를 해도 무관하다고 하여 remove를 한 다음에 다시 commit을 해주니 성공적으로 commit 되었습니다.

 

문제 파일을 먼저 내려주고 -> 필요시 삭제한 뒤 -> 다시 commit 의 절차로 처리할 수 있었습니다.

 

 


 

참고자료

 

https://stackoverflow.com/questions/35490156/git-merge-conflict-with-workspace-xml

 

Git merge conflict with workspace.xml

I'm trying to push my Rails project to Heroku, but Git isn't allowing me to do anything at the moment. Here's what I've done so far: git push heroku failed because the heroku branch was "ahead" of...

stackoverflow.com

 

반응형