반응형

.gitignore에 my_ignore_folder/ 폴더를 추가했음에도 Git이 계속 해당 폴더의 변경사항을 추적하는 이유는, 이미 Git이 이전에 해당 폴더를 트래킹하고 있기 때문이다. .gitignore 파일을 설정한 후에는 Git에 해당 폴더를 무시하도록 아래와 같이 추가 조치를 취해보자.

  1. 추적된 my_ignore_folder/ 폴더의 캐시 삭제
    .gitignore에 추가된 폴더가 이미 Git에서 추적 중인 상태라면 캐시를 삭제해야 한다. 
     
    git rm -r --cached my_ignore_folder/
  2. 변경 사항 커밋
    캐시에서 삭제된 내용을 커밋하여 기록에 반영한다.
     
    git commit -m "Remove my_ignore_folder folder from tracking"
  3. 푸시
    원격 저장소에 반영하려면 다음과 같이 푸시한다.
  4. git push

이 작업을 마친 후, my_ignore_folder/ 폴더는 .gitignore 설정에 따라 무시되어, 이후 변경 사항이 발생해도 Git이 추적하지 않게 된다.

만약 git rm -r --cached my_ignore_folder/ 명령을 실행했음에도 불구하고 my_ignore_folder/ 폴더가 여전히 Git에서 추적되고 있다면, 다음 사항들을 점검하고 추가 조치를 취해보자.

  1. .gitignore 파일이 제대로 설정되었는지 확인
    • .gitignore 파일에서 my_ignore_folder/ 경로가 올바르게 작성되었는지 다시 한번 확인한다.
    • .gitignore 파일이 Git의 루트 디렉토리에 위치해 있는지 확인한다. 프로젝트의 루트 디렉토리가 아니라면 무시되지 않을 수 있다.
  2. .gitignore 파일에 추가적인 경로 지정
    • .gitignore에 my_ignore_folder/ 외에 my_ignore_folder/*과 같은 패턴을 추가해 보세요. 간혹 Git이 하위 파일을 인식하는 경우가 있기 때문에, 아래와 같이 설정할 수도 있습니다:
       
      my_ignore_folder/
      my_ignore_folder/*
  3. git status로 확인
    • 터미널에서 git status 명령을 실행하여 my_ignore_folder/가 추적되고 있는지 확인해보자.
  4. 폴더 강제 삭제 후 커밋
    • 위 방법이 모두 실패한 경우, 강제로 my_ignore_folder/ 폴더를 무시하도록 처리한다.
      git rm -rf --cached my_ignore_folder
      git commit -m "Force ignore my_ignore_folder folder"
      git push
    • 이 명령어는 캐시에서 삭제를 강제하여 .gitignore 파일이 무시되도록 한다.
  5. 로컬 및 원격에 남아 있는지 확인
    • 최종적으로 SourceTree나 다른 Git 클라이언트를 사용하여 로컬과 원격 브랜치 모두에 my_ignore_folder/폴더가 여전히 남아 있는지 확인한다.

 

반응형
블로그 이미지

SKY STORY

,