힘내가 파일을 추적하지 않습니다. 힘내는 파일의 내용을 추적하고있다. 파일 이름은 단지 메타 데이터입니다. 따라서 git은 파일을 이동하거나 이름을 바꾸더라도 내용을 추적 할 수 있어야합니다. 그러므로 당신의 역사는 사라지지 않을 것입니다.
편집
는 당신에게 당신의 의견에 따라 예를 제공하기 위해 나는 새로운 자식 저장소를 생성하고 새 파일을 추가했습니다. 나는 다음과 같은 일련의 명령을 실행 않은 새 파일을 커밋 한 후
$ git status
# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: src/com/fun/HelloGitApp.java
#
: 망할 놈의 상태는 다음을 보여줍니다
$ mkdir -p src/main/java/com/fun
$ mv src/com/fun/HelloGitApp.java src/main/java/com/fun/HelloGitApp.java
$ rm -R com/
$ git add --all
힘내 이제 파일이 단지 이름이 바뀌 었습니다 것을 인식한다.
$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# renamed: com/fun/HelloGitApp.java -> main/java/com/fun/HelloGitApp.java
#
내가 (긴 시간 SVN) 이눔에 새로 온 사람, 그래서 나는이 시스템을 통해 명령하지 않은 움직임에 대해 아무 생각이 없을 것입니다 가정 : 새 자식 상태로이를 테스트 할 수 있습니다. 따라서 내가 /src/com/fun/a.java와 /src/main/java/com/fun/a.java 같은 변경 사항을 가진 기존 프로젝트 디렉토리를 덮어 쓸 수 있다면 git을 따라야한다. – Anthony
내 대답을 편집하여 제공했다. 당신은 귀하의 의견을 바탕으로 한 예입니다. 희망이 도움이 – ckihm
나는 그것이 그 mv를 데리러 수있었습니다. 계속해서 가져 오기를 시도하고 사용자가 보여준 방식으로 업데이트를 시도 할 것입니다. – Anthony