Merge branch 'ds/refmap-doc' into maint
"git fetch --refmap=" option has got a better documentation. * ds/refmap-doc: fetch: document and test --refmap=""
This commit is contained in:
commit
650ed395be
@ -139,7 +139,10 @@ ifndef::git-pull[]
|
|||||||
specified refspec (can be given more than once) to map the
|
specified refspec (can be given more than once) to map the
|
||||||
refs to remote-tracking branches, instead of the values of
|
refs to remote-tracking branches, instead of the values of
|
||||||
`remote.*.fetch` configuration variables for the remote
|
`remote.*.fetch` configuration variables for the remote
|
||||||
repository. See section on "Configured Remote-tracking
|
repository. Providing an empty `<refspec>` to the
|
||||||
|
`--refmap` option causes Git to ignore the configured
|
||||||
|
refspecs and rely entirely on the refspecs supplied as
|
||||||
|
command-line arguments. See section on "Configured Remote-tracking
|
||||||
Branches" for details.
|
Branches" for details.
|
||||||
|
|
||||||
-t::
|
-t::
|
||||||
|
@ -174,6 +174,30 @@ test_expect_success 'fetch --prune --tags with refspec prunes based on refspec'
|
|||||||
git rev-parse sometag
|
git rev-parse sometag
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success '--refmap="" ignores configured refspec' '
|
||||||
|
cd "$TRASH_DIRECTORY" &&
|
||||||
|
git clone "$D" remote-refs &&
|
||||||
|
git -C remote-refs rev-parse remotes/origin/master >old &&
|
||||||
|
git -C remote-refs update-ref refs/remotes/origin/master master~1 &&
|
||||||
|
git -C remote-refs rev-parse remotes/origin/master >new &&
|
||||||
|
git -C remote-refs fetch --refmap= origin "+refs/heads/*:refs/hidden/origin/*" &&
|
||||||
|
git -C remote-refs rev-parse remotes/origin/master >actual &&
|
||||||
|
test_cmp new actual &&
|
||||||
|
git -C remote-refs fetch origin &&
|
||||||
|
git -C remote-refs rev-parse remotes/origin/master >actual &&
|
||||||
|
test_cmp old actual
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success '--refmap="" and --prune' '
|
||||||
|
git -C remote-refs update-ref refs/remotes/origin/foo/otherbranch master &&
|
||||||
|
git -C remote-refs update-ref refs/hidden/foo/otherbranch master &&
|
||||||
|
git -C remote-refs fetch --prune --refmap="" origin +refs/heads/*:refs/hidden/* &&
|
||||||
|
git -C remote-refs rev-parse remotes/origin/foo/otherbranch &&
|
||||||
|
test_must_fail git -C remote-refs rev-parse refs/hidden/foo/otherbranch &&
|
||||||
|
git -C remote-refs fetch --prune origin &&
|
||||||
|
test_must_fail git -C remote-refs rev-parse remotes/origin/foo/otherbranch
|
||||||
|
'
|
||||||
|
|
||||||
test_expect_success 'fetch tags when there is no tags' '
|
test_expect_success 'fetch tags when there is no tags' '
|
||||||
|
|
||||||
cd "$D" &&
|
cd "$D" &&
|
||||||
|
Loading…
Reference in New Issue
Block a user