이미 Git 리포지토리에 커밋 된 파일 (config.php)이 있지만 로컬에서 무시하고 싶습니다. 즉, 해당 파일이 리포지토리에 남아 있기를 원하지만 Git에서 변경 사항을 무시하도록 강제합니다.
파일을 .gitignore에 넣었지만 여전히 변경된 것으로 표시되고 Git은 내가 무언가를 커밋 할 때마다 변경 사항을 커밋하려고 시도하고 있습니다. 어떤 아이디어, 내가 무엇을 놓치고 있거나 잘못하고 있습니까?
이미 Git 리포지토리에 커밋 된 파일 (config.php)이 있지만 로컬에서 무시하고 싶습니다. 즉, 해당 파일이 리포지토리에 남아 있기를 원하지만 Git에서 변경 사항을 무시하도록 강제합니다.
파일을 .gitignore에 넣었지만 여전히 변경된 것으로 표시되고 Git은 내가 무언가를 커밋 할 때마다 변경 사항을 커밋하려고 시도하고 있습니다. 어떤 아이디어, 내가 무엇을 놓치고 있거나 잘못하고 있습니까?
답변:
파일이 .gitignore에 있더라도 여전히 상태에 표시되는 경우 파일이 아직 추적되지 않았는지 확인하십시오.
git rm --cached config.php
로컬에서 무시하고 싶다면 git 상태로 무시할 수도 있습니다.
git update-index --assume-unchanged config.php
update-index --assume-unchanged
원격 지사 를 강제하는 방법이 있습니까? 파일을 저장소에 보관하고 싶지만 다른 사람이 변경할 수는 없지만 스테이지에 사용할 수 없습니다.
파일이 이미 저장소에 있으므로 인덱스 / 스테이징 영역에있는 경우 .gitignore에 대한 업데이트는 해당 상황을 변경하지 않습니다. 계속 커밋됩니다.
Index / Staging 영역에서 파일을 제거하려면 git rm <file>
.
status
계속해서 알려줍니다. 그 변화에 대해. 이전에 택한 파일과 현재 추적되지 않은 파일 모두에 대해 * .log 파일을 무시하려면 git rm *.log
.gitignore 파일 을 모두 업데이트하고 업데이트해야합니다. 일부 로그 파일이 실제로 중요한 경우 먼저 확인 마 ... 그것은 특별한 일 ;-) 잊기 쉬운
파일이 .gitignore에 나열되면 변경할 수 없습니다.
따라서 한 커밋의 목록에서 파일을 제거하고 다음 커밋을 커밋 한 다음 나중에 세 번째 커밋에서 무시 목록에 파일을 다시 추가 할 수 있습니다.
내가 일반적으로하는 일은 파일을 두 개로 분할하는 것입니다. 하나는 허용되고 변경할 수 있습니다. 두 번째 파일이있는 경우이를 포함하면 개발자는 선택적으로 무시 된 파일에서 구성을 변경할 수 있습니다.
.gitignore
의 내가 지속적으로 이러한 파일을 변경하고 있습니다! 에 파일을 추가하면 .gitignore
변경할 수 없다고 말하는 사람이 처음 입니다.