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