GIT-MV(1)                        Git Manual                        GIT-MV(1)

NAME         top

       git-mv - Move or rename a file, a directory, or a symlink

SYNOPSIS         top

       git mv <options>... <args>...

DESCRIPTION         top

       Move or rename a file, directory or symlink.

           git mv [-v] [-f] [-n] [-k] <source> <destination>
           git mv [-v] [-f] [-n] [-k] <source> ... <destination directory>

       In the first form, it renames <source>, which must exist and be
       either a file, symlink or directory, to <destination>. In the second
       form, the last argument has to be an existing directory; the given
       sources will be moved into this directory.

       The index is updated after successful completion, but the change must
       still be committed.

OPTIONS         top

       -f, --force
           Force renaming or moving of a file even if the target exists

           Skip move or rename actions which would lead to an error
           condition. An error happens when a source is neither existing nor
           controlled by Git, or when it would overwrite an existing file
           unless -f is given.

       -n, --dry-run
           Do nothing; only show what would happen

       -v, --verbose
           Report the names of files as they are moved.

SUBMODULES         top

       Moving a submodule using a gitfile (which means they were cloned with
       a Git version 1.7.8 or newer) will update the gitfile and
       core.worktree setting to make the submodule work in the new location.
       It also will attempt to update the submodule.<name>.path setting in
       the gitmodules(5) file and stage that file (unless -n is used).

BUGS         top

       Each time a superproject update moves a populated submodule (e.g.
       when switching between commits before and after the move) a stale
       submodule checkout will remain in the old location and an empty
       directory will appear in the new location. To populate the submodule
       again in the new location the user will have to run "git submodule
       update" afterwards. Removing the old directory is only safe when it
       uses a gitfile, as otherwise the history of the submodule will be
       deleted too. Both steps will be obsolete when recursive submodule
       update has been implemented.

GIT         top

       Part of the git(1) suite

COLOPHON         top

       This page is part of the git (Git distributed version control system)
       project.  Information about the project can be found at 
       ⟨⟩.  If you have a bug report for this manual page,
       see ⟨⟩.  This page was obtained from the
       project's upstream Git repository ⟨⟩ on
       2018-10-29.  (At that time, the date of the most recent commit that
       was found in the repository was 2018-10-26.)  If you discover any
       rendering problems in this HTML version of the page, or you believe
       there is a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to

Git           07/16/2016                        GIT-MV(1)

Pages that refer to this page: git(1)git-add(1)git-commit(1)