본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.
Section 5.15: .gitignore 에 추가하기 전에 이미 커밋되어 있던 파일들 정리하기
가끔은 Git 에 의해 추적 관리되던 (tracked) 파일을 나중에 관리를 중단하기 위하여 .gitignore 에 추가하게 되는 경우가 생긴다. 이런 경우, .gitignore 에 추가하기 전에 해당 파일들을 정리하는 것을 간과하기가 쉬워, 결과적으로 해당 파일들이 저장소 내에 여전히 존재하게 된다.
이러한 문제를 해결하기 위해, 저장소 내의 모든 파일을 임시로 ("dry-run") 제거한 후 다시 전체 파일들을 추가하는 방법을 사용할 수 있다. 반영 대기중인 변경사항이 없고 --cached
옵션이 사용되었다면, 파일을 제거하고 추가하는 이 작업은 비교적 안전하다고 간주할 수 있을 것이다:
# index 에서 모든 파일들을 제거한다 (실제 파일시스템에서는 제거되지 않고 남아 있을 것이다
$ git rm -r --cached .
# 다시 전체를 추가한다 (변경된 부분이 있다면 해당 부분이 포함된 현재 상태 그대로 추가된다)
$ git add .
# 변경 사항이 있다면 커밋을 수행한다. 변경 사항은 파일이 제거된 내역만 존재하여야 할 것이다.
$ git commit -m 'Remove all files that are in the .gitignore'
# 원격 저장소를 업데이트 한다
$ git push origin master
[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)
'번역 > Git Notes for Professionals' 카테고리의 다른 글
6.1: 현재 작업 디렉토리 내의 변경사항 표시하기 (0) | 2019.09.11 |
---|---|
6: Git Diff (0) | 2019.09.10 |
5.14: 변경사항이 이미 추적되고 있는 (tracked) 파일의 변경 사항 ignore 처리하기 (0) | 2019.09.09 |
5.13: 파일 내의 일부분만 ignore 처리하기 (0) | 2019.09.09 |
5.12: .gitignore 파일에 의해 ignore 처리된 파일들 검색하기 (0) | 2019.09.08 |