-
[쉬운 Git] git submodule 간단하게 삭제하기소프트웨어 & 잡다 2020. 4. 13. 22:50
git 을 사용하다보면 왠만해서는 git submodule을 사용할 일이 없다. 그리고 대부분의 경우에도 git submodule 없이 해결 가능하는게 바람직하다. 하지만 어쩌다가 불가피한 이유로 submodule 을 추가하게 되었고, 불필요함을 느껴서 삭제하기위한 방법을 찾다가 이상하게 복잡한 방법들이 난무하는 것을 보고 당황하는 경험을 해보았을 것이다. 이글을 적는 이유는, 2020년 현재까지 불필요하게 시간낭비를 하지 않기를 바라기 때문이다.
특히 스택오버플로우(stackoverflow.com) 에서 아래 글을 발견한 분은 "뭐지 이게?" 하는 생각을 했을 것이다.
https://stackoverflow.com/questions/1260748/how-do-i-remove-a-submodule
글을 읽어보면 아래와 같이 3단계를 거쳐야 완벽하게 제거할 수 있다고 한다. 아마도 언제부터인가 업데이트가 중단된 포스팅인 것 같은데, 예전에는 나도 분명히 서브모듈을 지울 때 찌꺼기가 남아서 엄청 고생했던 경험이 있기 때문에 왜 이런 과정이 생겨나게 되었는지 짐작은 간다. 하지만 이 절차를 따를 필요가 전혀 없다.
0. mv a/submodule a/submodule_tmp 1. git submodule deinit -f -- a/submodule 2. rm -rf .git/modules/a/submodule 3. git rm -f a/submodule # Note: a/submodule (no trailing slash) # or, if you want to leave it in your working tree and have done step 0 3. git rm --cached a/submodule 3bis mv a/submodule_tmp a/submodule
결론부터 이야기 하면 2020년 현재 git 버전 2.25 (혹은 더 아래) 에서 git submodule 을 삭제하기 위해서는 단순히 아래 명령어면 된다.
$ git rm -f my_submodule
명령 수행 전에 변경사항을 반드시 commit 해두시길 바란다.
'소프트웨어 & 잡다' 카테고리의 다른 글
[쉬운 Git] git rebase 의 방법과 다양한 문제 해결 (0) 2020.04.12 [머신러닝] 한손으로 큐브 퍼즐을 푸는 로봇 (0) 2019.10.16 내 티스토리 블로그가 다음 검색에 노출되지 않는 문제 해결 (0) 2019.10.14 아직도 SVN 사용하는 분이 많으신가요? (1) 2019.10.02 Vagrant up 수행시 새로운 VM이 생성되는 문제 (0) 2016.05.25 간단한 리눅스 서버 성능 향상 (0) 2016.04.04 NodeJS 입문을 위한 text editor - Visual Studio Code (6) 2015.11.25 콘솔에서 git 사용시 컬러 설정 (0) 2015.09.22