1git-mv(1) 2========= 3 4NAME 5---- 6git-mv - Move or rename a file, a directory, or a symlink 7 8 9SYNOPSIS 10-------- 11[verse] 12'git mv' <options>... <args>... 13 14DESCRIPTION 15----------- 16Move or rename a file, directory or symlink. 17 18 git mv [-v] [-f] [-n] [-k] <source> <destination> 19 git mv [-v] [-f] [-n] [-k] <source> ... <destination directory> 20 21In the first form, it renames <source>, which must exist and be either 22a file, symlink or directory, to <destination>. 23In the second form, the last argument has to be an existing 24directory; the given sources will be moved into this directory. 25 26The index is updated after successful completion, but the change must still be 27committed. 28 29OPTIONS 30------- 31-f:: 32--force:: 33 Force renaming or moving of a file even if the target exists 34-k:: 35 Skip move or rename actions which would lead to an error 36 condition. An error happens when a source is neither existing nor 37 controlled by Git, or when it would overwrite an existing 38 file unless `-f` is given. 39-n:: 40--dry-run:: 41 Do nothing; only show what would happen 42 43-v:: 44--verbose:: 45 Report the names of files as they are moved. 46 47SUBMODULES 48---------- 49Moving a submodule using a gitfile (which means they were cloned 50with a Git version 1.7.8 or newer) will update the gitfile and 51core.worktree setting to make the submodule work in the new location. 52It also will attempt to update the submodule.<name>.path setting in 53the linkgit:gitmodules[5] file and stage that file (unless -n is used). 54 55BUGS 56---- 57Each time a superproject update moves a populated submodule (e.g. when 58switching between commits before and after the move) a stale submodule 59checkout will remain in the old location and an empty directory will 60appear in the new location. To populate the submodule again in the new 61location the user will have to run "git submodule update" 62afterwards. Removing the old directory is only safe when it uses a 63gitfile, as otherwise the history of the submodule will be deleted 64too. Both steps will be obsolete when recursive submodule update has 65been implemented. 66 67GIT 68--- 69Part of the linkgit:git[1] suite