.gitignore에 파일을 추가하는 방법과 소스 트리에서 파일을 무시한 후 .gitignore 파일 내용이 변경되지 않는 이유는 무엇입니까?

.gitignore에 파일을 추가하는 방법과 소스 트리에서 파일을 무시한 후 .gitignore 파일 내용이 변경되지 않는 이유는 무엇입니까?

폴더 에서 발견된 .vs잠금/권한 거부 오류가 발생했기 때문에 전체 폴더를 무시하고 싶었 기 때문에 다음 bash 명령을 사용하여 파일을 만들었습니다 .sqlite3/db.lock.vs.gitignore

touch .gitignore

그런 다음 .gitignore 파일 내부에 다음 줄을 추가했습니다.

.vs/*

하지만 실행할 때 여전히 같은 오류가 발생합니다 git add --all.

결국 Sourcetree 앱을 열고 .vs파일을 마우스 오른쪽 버튼으로 클릭하고 무시를 선택하여 폴더 내용을 무시한 다음 모든 파일을 추가하고 커밋하고 푸시했습니다(Sourcetree 앱을 통해).

명령줄을 통해 모든 작업을 수행하고 싶었기 때문에 이 솔루션이 마음에 들지 않았습니다. 이제 Sourcetree를 통해 조작한 것으로 추정되는 gitignore 콘텐츠가 왜 변경되지 않았는지 궁금합니다. 에 파일을 어떻게 추가할 수 있나요 .gitignore? 내가 한 일은 별 효과가 없었던 것 같다. (줄을 추가했다는 사실 .vs/*)

답변1

당신이 한 일은 효과가 있었습니다. 즉 그 모든 것은미래변경 사항은 무시됩니다.

여기서 문제는 파일을 추가하면 .gitignore변경 사항이 무시되지만 저장소에는 계속 남아 있다는 것입니다. 당신이 해야 할 일은 git에서 모든 것을 제거하고 다시 추가하는 것입니다. 이렇게 하면 무시하려는 파일이 추가되지 않습니다.

다음 명령을 사용하여 이 작업을 수행할 수 있습니다.

git rm -r --cached .
git add .
git commit -m ".gitignore fix"

참조:http://www.codeblocq.com/2016/01/Untrack-files-already- added-to-git-repository-based-on-gitignore/

관련 정보