Как следует из названия, операция перемещения перемещает каталог или файл из одного места в другое. Том решает переместить исходный код в каталог src . Измененная структура каталогов будет выглядеть следующим образом:
[tom@CentOS project]$ pwd /home/tom/project [tom@CentOS project]$ ls README string string.c [tom@CentOS project]$ mkdir src [tom@CentOS project]$ git mv string.c src/ [tom@CentOS project]$ git status -s R string.c −> src/string.c ?? string
Чтобы сделать эти изменения постоянными, нам нужно отправить измененную структуру каталогов в удаленный репозиторий, чтобы другие разработчики могли это увидеть.
[tom@CentOS project]$ git commit -m "Modified directory structure" [master 7d9ea97] Modified directory structure 1 files changed, 0 insertions(+), 0 deletions(-) rename string.c => src/string.c (100%) [tom@CentOS project]$ git push origin master Counting objects: 4, done. Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 320 bytes, done. Total 3 (delta 0), reused 0 (delta 0) To [email protected]:project.git e86f062..7d9ea97 master −> master
В локальном репозитории Джерри перед операцией извлечения будет показана старая структура каталогов.
[jerry@CentOS project]$ pwd /home/jerry/jerry_repo/project [jerry@CentOS project]$ ls README string string.c
Но после операции извлечения структура каталогов будет обновлена. Теперь Джерри может видеть каталог src и файл, находящийся внутри этого каталога.