git_remote_helpers: push all refs during a non-local export
When a remote helper exports to a non-local git repo, the
steps are roughly:
1. fast-export into a local staging area; the set of
interesting refs is defined by what is in the fast-export
stream
2. git push from the staging area to the non-local repo
In the second step, we should explicitly push all refs, not
just matching ones. This will let us push refs that do not
yet exist in the remote repo.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Sverre Rabbelier <srabbelier@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
3ea7d09461
commit
b4b872994b
@ -63,7 +63,7 @@ class NonLocalGit(object):
|
||||
if not os.path.exists(path):
|
||||
die("could not find repo at %s", path)
|
||||
|
||||
args = ["git", "--git-dir=" + path, "push", "--quiet", self.repo.gitpath]
|
||||
args = ["git", "--git-dir=" + path, "push", "--quiet", self.repo.gitpath, "--all"]
|
||||
child = subprocess.Popen(args)
|
||||
if child.wait() != 0:
|
||||
raise CalledProcessError
|
||||
|
||||
@ -115,7 +115,7 @@ test_expect_success 'push when remote has extra refs' '
|
||||
compare_refs clone master server master
|
||||
'
|
||||
|
||||
test_expect_failure 'push new branch by name' '
|
||||
test_expect_success 'push new branch by name' '
|
||||
(cd clone &&
|
||||
git checkout -b new-name &&
|
||||
echo content >>file &&
|
||||
|
||||
Reference in New Issue
Block a user