프로젝트 개발을 한 참 진행한 후
어느정도 개발이 되었을 때 첫 commit을 올렸습니다.
그런데 아차,
.gitignore 파일을 작성하지 않고 build도 돌리고
커밋을 해버렸습니다.
(그렇게 첫 커밋에 올리지 않아도 될 클래스 파일까지 다 올라가버렸음)
뒤늦게 .gitignore 파일을 열심히 작성해서 적용했지만
몇 개의 파일에만 적용되는 듯 했고
... 프로젝트 마감이 다 될 때까지(무려 3개월 이상을)
class파일이 커밋목록에 함께 떠있었습니다.
커밋 할 때 마다 class 파일을 피해서
java, xml 파일만 선택해서 커밋하는게
점점 한계점이 왔고.. 실수하는 일도 많아졌습니다
커밋할 파일을 누락한다던지..
class파일을 함께 올린다던지..
도저히 안되겠어서 이것저것 만져보던 도중..!
좌측 커밋 설정창 상단에서 group by로
파일을 폴더별로 묶어서 볼 수 있는 기능을 찾았는데요
commit-view options-group by-Directory를 클릭해서
폴더별로 묶어주고 나니
어떤 폴더의 파일들이 커밋에서 빠지는지
한 눈에 확인할 수 있었습니다.
.gradle
.idea
build
세 개의 폴더의 파일들이 .gitignore 파일에
적용이 안되고 있었네요
위의 이미지를 chat-gpt에게 넘겨주고
gitignore 설정내용도 함께 넘겨주고 질문했습니다
이전에도 이 아이한테 물어본 적은
이미 있었지만.. gitignore에 정상적으로 적용된게 맞다는 말만 반복하더니
이번에는 이미지를 함께 주어서 그런지
단번에 이해하고 해결책을 찾아주었습니다.
.gitignore 파일에 규칙을 추가하기 전에
이미 Git에 추가된 경우 규칙이 적용되지 않습니다.
이거다!!
1. 먼저 커밋할 파일들을 모두 개발 서버로 올린 후
2. 목록에 있는 class파일들이나 커밋목록에서 삭제될 파일들을
모두 선택하여 우클릭하고 rollback을 시켜줍시다.
3.해결 방법으로 제안해준 깃 캐시 삭제 명령어를 터미널에 작성합니다.
git rm - r --cached 제외할폴더
한 줄 씩 작성했더니 아래로 쭈루룩 캐시가 삭제되는 듯
파일경로가 뜨더니...!
이후에 코드를 수정하거나 빌드해도
커밋목록에 build, .gradle, .idea안의 항목들이 포함되지 않았습니다 !
최근에도 캐시문제 때문에 애를 먹었었는데
또 캐시라니... 뭔가 안 될 땐 캐시부터 확인하자구요
깃 캐시 까지~
'Coding > git' 카테고리의 다른 글
[GitLab] 저장소 옮기기 :: 기존 저장소에서 새로운 저장소로 프로젝트 복사하기 (0) | 2024.12.19 |
---|