git 으로 버전 관리할 경우 파일이나 폴더의 이름 변경도 추적할 수 있어야 한다.
특히 리팩토링시 클래스나 패키지 폴더의 이름 변경은 자주 발생하는 작업이므로 변경 내역을 잘 관리해야 하며 git 의 아래 명령어를 사용하면 된다.
git mvLink to git mv
파일 이동 명령어인 mv 사용하면 변경 사항을 추적할 수 있으며 다음과 같이 사용하면 된다.
git mv oldName newName
-n( --dry-run) 옵션을 사용하면 적용전에 어떻게 변경되는지 테스트가 가능하다.
mv 명령시 invalid argument 에러가 발생하는 경우가 있다. 제 경험상 파일이나 폴더 이름의 일부를 대소문자로 변경하는 경우에 발생한다.
예로 sprint 라는 폴더를 Sprint로 첫 글자를 대소문자로 변경하는 경우 위 에러를 접하게 된다.
이럴 경우 아래와 같이 임시 폴더 이름으로 rename 하고 임시 폴더 이름을 원래 바꾸려고 한 이름으로 rename 하는 2단계 절차를 거치면 된다.
git mv sprint tmpDir git mv tmpDir Sprint