Merge branch 'jk/maint-mv' into maint
* jk/maint-mv: mv: be quiet about overwriting mv: improve overwrite warning mv: make non-directory destination error more clear mv: honor --verbose flag docs: mention "-k" for both forms of "git mv"
This commit is contained in:
commit
699eb54876
@ -15,8 +15,8 @@ DESCRIPTION
|
|||||||
-----------
|
-----------
|
||||||
This script is used to move or rename a file, directory or symlink.
|
This script is used to move or rename a file, directory or symlink.
|
||||||
|
|
||||||
git mv [-f] [-n] <source> <destination>
|
git mv [-v] [-f] [-n] [-k] <source> <destination>
|
||||||
git mv [-f] [-n] [-k] <source> ... <destination directory>
|
git mv [-v] [-f] [-n] [-k] <source> ... <destination directory>
|
||||||
|
|
||||||
In the first form, it renames <source>, which must exist and be either
|
In the first form, it renames <source>, which must exist and be either
|
||||||
a file, symlink or directory, to <destination>.
|
a file, symlink or directory, to <destination>.
|
||||||
@ -40,6 +40,10 @@ OPTIONS
|
|||||||
--dry-run::
|
--dry-run::
|
||||||
Do nothing; only show what would happen
|
Do nothing; only show what would happen
|
||||||
|
|
||||||
|
-v::
|
||||||
|
--verbose::
|
||||||
|
Report the names of files as they are moved.
|
||||||
|
|
||||||
GIT
|
GIT
|
||||||
---
|
---
|
||||||
Part of the linkgit:git[1] suite
|
Part of the linkgit:git[1] suite
|
||||||
|
@ -59,6 +59,7 @@ int cmd_mv(int argc, const char **argv, const char *prefix)
|
|||||||
int i, newfd;
|
int i, newfd;
|
||||||
int verbose = 0, show_only = 0, force = 0, ignore_errors = 0;
|
int verbose = 0, show_only = 0, force = 0, ignore_errors = 0;
|
||||||
struct option builtin_mv_options[] = {
|
struct option builtin_mv_options[] = {
|
||||||
|
OPT__VERBOSE(&verbose, "be verbose"),
|
||||||
OPT__DRY_RUN(&show_only, "dry run"),
|
OPT__DRY_RUN(&show_only, "dry run"),
|
||||||
OPT__FORCE(&force, "force move/rename even if target exists"),
|
OPT__FORCE(&force, "force move/rename even if target exists"),
|
||||||
OPT_BOOLEAN('k', NULL, &ignore_errors, "skip move/rename errors"),
|
OPT_BOOLEAN('k', NULL, &ignore_errors, "skip move/rename errors"),
|
||||||
@ -93,7 +94,7 @@ int cmd_mv(int argc, const char **argv, const char *prefix)
|
|||||||
destination = copy_pathspec(dest_path[0], argv, argc, 1);
|
destination = copy_pathspec(dest_path[0], argv, argc, 1);
|
||||||
} else {
|
} else {
|
||||||
if (argc != 1)
|
if (argc != 1)
|
||||||
usage_with_options(builtin_mv_usage, builtin_mv_options);
|
die("destination '%s' is not a directory", dest_path[0]);
|
||||||
destination = dest_path;
|
destination = dest_path;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -176,7 +177,8 @@ int cmd_mv(int argc, const char **argv, const char *prefix)
|
|||||||
* check both source and destination
|
* check both source and destination
|
||||||
*/
|
*/
|
||||||
if (S_ISREG(st.st_mode) || S_ISLNK(st.st_mode)) {
|
if (S_ISREG(st.st_mode) || S_ISLNK(st.st_mode)) {
|
||||||
warning(_("%s; will overwrite!"), bad);
|
if (verbose)
|
||||||
|
warning(_("overwriting '%s'"), dst);
|
||||||
bad = NULL;
|
bad = NULL;
|
||||||
} else
|
} else
|
||||||
bad = _("Cannot overwrite");
|
bad = _("Cannot overwrite");
|
||||||
|
Loading…
Reference in New Issue
Block a user