내일배움캠프 Node.js 트랙 45일차
git 폴더, 파일명 변경하기
이 글에선 우리 팀에서 실제로 일어났던 이슈와 그에 대한 해결책에 대해 적어보려고 한다.
저번 주, 우리 팀원 중 한 분이 원격 저장소에 이미 업로드되었던 Socket.js라는 파일의 이름을 socket.js로 변경했다가 무한 커밋의 굴레에 빠지게 되셨다. 각종 깃헙 프로그램, 플러그인들이 socket.js를 커밋하던 순간 Socket.js에 변동사항이 있다며 재차 커밋을 하라고 요구하기 시작했다.
이후 dev를 통해 pr을 시작하자 무한 커밋의 굴레는 모든 팀원에게 바이러스처럼 퍼지기 시작했다. 이와 비슷한 일을 겪었던 내 짧은 식견으론 아래와 같은 명령어를 시도해보는 게 최선이었다.
git rm --cached <fileName>
해당 명령어는 원격 저장소에 이미 업로드된 파일을 더 이상 추적하지 않게끔 강제하는 명령어다. 이전 글(.env 관련 게시글)에서도 다룬 적이 있었다.
그러나 위 방법은 이번 경우엔 통하지 않았고, 우리는 다른 해결 방법을 찾아야 했다. 해당 문제에 대하여 구글링을 해본 결과, 다행스럽게도 답을 찾아냈다.
파일 이름/ 폴더 이름을 변경하는 git 명령어
가장 처음 보게 된 것은 git mv 명령어였다. 그리고 새롭게 배운 건 git에 올라간 파일 혹은 폴더 이름을 변경할 때 해당 명령어를 쓰는 게 바람직하다는 것이었다.(지금껏 로컬에서 이름을 변경하고 있었는데…매우 안 좋은 습관이었다.)
git mv <이전이름> <원하는이름>
부차적인 오류들
bad source 오류
fatal: bad source, source=Review, destination=review
=> 이 오류는 현재 경로에서 입력한 파일이나 폴더의 이름을 발견할 수 없을 때 일어난다. 만약 터미널에서의 현재 위치가 프로젝트 폴더의 최상위라면, 하위 폴더 속 파일/폴더의 이름을 인식하지 못한다. 따라서 cd 명령어를 통해 작업을 수행하려는 경로까지 이동을 해주어야 한다.
source directory is empty 오류
원격 저장소와 로컬 저장소의 프로젝트 폴더의 이름이 다를 때 일어난다. 즉, 로컬에 이미 Socket.js로 업로드가 되었을 때, socket.js로 파일을 바꾼 다음
git mv Socket.js socket.js
이 명령어를 치면 안 된다. 다시 폴더 이름을 Socket.js로 되돌리고 해당 명령어를 입력해야만 한다.
'개발일지 > TIL(Today I Learned)' 카테고리의 다른 글
2025-01-02 <응용 계층에 대하여(1)> (0) | 2025.01.02 |
---|---|
2024-12-31 (0) | 2024.12.31 |
2024-12-27 (1) | 2024.12.27 |
2024-12-26 (1) | 2024.12.26 |
2024-12-24 (0) | 2024.12.24 |
댓글