일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 컴퓨터공학
- 코딩
- 데이터과학
- 알고리즘
- 인공지능
- 보안
- 클라우드컴퓨팅
- Yes
- 자료구조
- 소프트웨어
- 데이터분석
- 사이버보안
- 웹개발
- 파이썬
- 소프트웨어공학
- 컴퓨터비전
- 데이터구조
- I'm Sorry
- 프로그래밍
- 빅데이터
- 데이터베이스
- 컴퓨터과학
- 네트워크보안
- 프로그래밍언어
- 네트워크
- 머신러닝
- 자바스크립트
- 딥러닝
- 버전관리
- 2
- Today
- Total
스택큐힙리스트
.gitignore에 추가한 파일은 Git에서 더 이상 추적하지 않도록하려면 어떻게해야 합니까? 본문
Git로 이전에 추적되던 파일을 .gitignore 리스트에 넣었습니다. 하지만 편집 후에도 파일이 git status에 표시됩니다. Git에서 파일을 완전히 잊도록 어떻게 강제로 할 수 있을까요?
답변 1
.gitignore는 Git이 추적하는 파일 집합에 기록하지 않는 미추적 파일을 방지합니다 ( add -f이 없이). 그러나 Git은 이미 추적 중인 파일은 계속해서 추적합니다.
파일 추적을 중단하려면 인덱스에서 제거해야합니다.
"git rm --cached
"
폴더와 폴더 내 모든 파일을 재귀적으로 삭제하려면:
"git rm -r --cached
"
다음 커밋에서 헤드 리비전에서 파일이 제거될 것입니다.
경고: 이 작업은 로컬 기기에서 실제 파일을 제거하지는 않지만, 다음 git pull에서 다른 개발자들의 기기에서 파일을 제거할 것입니다.
답변 2
Git에서 .gitignore 파일에 추가된 파일을 추적했던 경우, git이 이를 '기억'하는 것은 문제를 일으킬 수 있습니다. 이 상황에서는 이 파일을 git의 추적목록에서 제거해야합니다. 이를 위해, git 스테이지에서 해당 파일을 제거해야 합니다.
우선, .gitignore 파일에 이 파일을 추가합니다. 이를 통해 git은 해당 파일을 추적하지 않는 것을 감지할 것입니다. 그러나, 이미 이전에 파일이 추적되었다면, git은 추적 중지를 해도 계속해서 파일을 추적할 수 있습니다. 이때, 다음 명령어를 실행하여 git 스테이지에서 해당 파일을 제거합니다.
$ git rm --cached [파일명]
이 명령어는 git에서 해당 파일을 추적목록에서 제거하지만, 실제 파일은 삭제하지 않습니다. 이 파일은 현재 .gitignore 파일에 포함되어 있으므로, 다시 추적되지 않습니다.
이제 파일을 변경한 커밋을 만들어야할지 여부는 여러분의 판단에 달려있습니다. 이 파일을 세부적으로 변경했다면, 새로운 커밋을 생성하여 변경 내용을 저장해야합니다. 그러나 단순히 추적목록에서 파일을 제거할 뿐이라면, 추가 커밋은 필요하지 않습니다.
이렇게 git에서 파일을 추적목록에서 제거하는 것은 단순하지만, git 저장소를 관리하는 데 중요한 점입니다. .gitignore 파일을 사용하여 git이 추적하지 않아야 할 파일을 미리 설정해두는 것은 좋은 방법입니다. 그러나 이미 추적 중인 파일을 .gitignore파일에 추가한 경우, 해당 파일을 git 추적목록에서 제거하기 위해서 위의 명령어를 사용하시면 됩니다.