개발관련/Git

추적을 중지하고 Git에서 파일 변경 사항을 무시하는 방법

Rateye 2021. 11. 27. 21:12
728x90
반응형
질문 : 추적을 중지하고 Git에서 파일 변경 사항을 무시하는 방법

.csproj 파일이 포함 된 프로젝트를 복제했습니다. 나는 내 로컬 csproj 파일이 Git에 의해 추적되는 (또는 패치를 만들 때 가져 오는) 필요 / 좋지 않지만 분명히 프로젝트에서 필요합니다.

*.csproj 를 내 LOCAL .gitignore 에 추가했지만 파일이 이미 저장소에 있습니다.

git status를 입력하면 패치를 추적하거나 제출하는 데 관심이없는 csproj

상태를 수행하거나 패치를 생성 할 때 변경 사항을 볼 수 없도록 개인 리포지토리에서 이러한 파일의 "추적"을 제거하려면 (하지만 소스에 보관하여 사용할 수 있도록) 어떻게해야합니까?

이 상황을 처리하는 올바른 / 표준적인 방법이 있습니까?

답변

개정 관리에서 제거하려는 각 파일에 대해 git rm --cached 를 호출하는 것만으로도 문제가 없습니다. 로컬 무시 패턴이 올바른 한 git status 출력에 이러한 파일이 포함되어 있지 않습니다.

이 솔루션은 저장소에서 파일을 제거하므로 모든 개발자는 파일의 자체 로컬 (수정되지 않은) 복사본을 유지해야합니다.

git이 이러한 파일의 변경 사항을 감지하지 못하도록하려면 다음 명령도 사용해야합니다.

git update-index --assume-unchanged [path]

당신이 아마하고 싶은 것 : (아래에서 @Ryan Taylor 대답 )

  1. 이것은 파일이나 폴더의 독립적 인 버전을 원한다고 git에게 알리기위한 것입니다. 예를 들어 프로덕션 / 스테이징 구성 파일을 덮어 쓰거나 삭제하고 싶지 않습니다.

git update-index --skip-worktree <path-name>

전체 답변은 다음 URL에 있습니다. http://source.kohlerville.com/2009/02/untrack-files-in-git/

출처 : https://stackoverflow.com/questions/936249/how-to-stop-tracking-and-ignore-changes-to-a-file-in-git
728x90
반응형