]> git.ipfire.org Git - thirdparty/git.git/blame_incremental - Documentation/git-mv.txt
Fifteenth batch
[thirdparty/git.git] / Documentation / git-mv.txt
... / ...
CommitLineData
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