diff options
author | Junio C Hamano <gitster@pobox.com> | 2009-02-04 13:07:09 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2009-02-04 13:07:09 -0800 |
commit | de8139005f04a4a5ad8a54c771475803594028cd (patch) | |
tree | b8ca6c2c2c591bdd8d99ffe62797e80ff8ff8008 | |
parent | d3f552b67413ab06ea456d1cc7c57c5661bbf468 (diff) | |
parent | f26b5dc9efccc998510505685d6d919b4dd087e7 (diff) | |
download | git-de8139005f04a4a5ad8a54c771475803594028cd.tar.gz git-de8139005f04a4a5ad8a54c771475803594028cd.tar.xz |
Merge branch 'maint'
* maint:
urls.txt: document optional port specification in git URLS
builtin-mv.c: check for unversionned files before looking at the destination.
Add a testcase for "git mv -f" on untracked files.
Missing && in t/t7001.sh.
-rw-r--r-- | Documentation/urls.txt | 8 | ||||
-rw-r--r-- | builtin-mv.c | 8 | ||||
-rwxr-xr-x | t/t7001-mv.sh | 10 |
3 files changed, 17 insertions, 9 deletions
diff --git a/Documentation/urls.txt b/Documentation/urls.txt index fa34c6747..5355ebc0f 100644 --- a/Documentation/urls.txt +++ b/Documentation/urls.txt @@ -6,10 +6,10 @@ to name the remote repository: =============================================================== - rsync://host.xz/path/to/repo.git/ -- http://host.xz/path/to/repo.git/ -- https://host.xz/path/to/repo.git/ -- git://host.xz/path/to/repo.git/ -- git://host.xz/~user/path/to/repo.git/ +- http://host.xz{startsb}:port{endsb}/path/to/repo.git/ +- https://host.xz{startsb}:port{endsb}/path/to/repo.git/ +- git://host.xz{startsb}:port{endsb}/path/to/repo.git/ +- git://host.xz{startsb}:port{endsb}/~user/path/to/repo.git/ - ssh://{startsb}user@{endsb}host.xz{startsb}:port{endsb}/path/to/repo.git/ - ssh://{startsb}user@{endsb}host.xz/path/to/repo.git/ - ssh://{startsb}user@{endsb}host.xz/~user/path/to/repo.git/ diff --git a/builtin-mv.c b/builtin-mv.c index bce995929..01270fefd 100644 --- a/builtin-mv.c +++ b/builtin-mv.c @@ -162,7 +162,9 @@ int cmd_mv(int argc, const char **argv, const char *prefix) } argc += last - first; } - } else if (lstat(dst, &st) == 0) { + } else if (cache_name_pos(src, length) < 0) + bad = "not under version control"; + else if (lstat(dst, &st) == 0) { bad = "destination exists"; if (force) { /* @@ -177,9 +179,7 @@ int cmd_mv(int argc, const char **argv, const char *prefix) } else bad = "Cannot overwrite"; } - } else if (cache_name_pos(src, length) < 0) - bad = "not under version control"; - else if (string_list_has_string(&src_for_dst, dst)) + } else if (string_list_has_string(&src_for_dst, dst)) bad = "multiple sources for the same target"; else string_list_insert(dst, &src_for_dst); diff --git a/t/t7001-mv.sh b/t/t7001-mv.sh index ef2e78f9d..8fb3a5683 100755 --- a/t/t7001-mv.sh +++ b/t/t7001-mv.sh @@ -55,9 +55,17 @@ test_expect_success \ git mv -k untracked1 untracked2 path0 && test -f untracked1 && test -f untracked2 && - test ! -f path0/untracked1 + test ! -f path0/untracked1 && test ! -f path0/untracked2' +test_expect_success \ + 'checking -f on untracked file with existing target' \ + 'touch path0/untracked1 && + git mv -f untracked1 path0 + test ! -f .git/index.lock && + test -f untracked1 && + test -f path0/untracked1' + # clean up the mess in case bad things happen rm -f idontexist untracked1 untracked2 \ path0/idontexist path0/untracked1 path0/untracked2 \ |