Re: Keeping a non-1:1 mirror in sync and keeping private branches
- Date: Sun, 16 Jul 2017 15:42:09 +0200
- From: Jan Danielsson <jan.m.danielsson@xxxxxxxxx>
- Subject: Re: Keeping a non-1:1 mirror in sync and keeping private branches
On 07/16/17 12:10, Jeff King wrote:
>> This seems to accomplish everything I want except that the the "git
>> push" deletes any branches I have created on my self-hosted
> A mirrored push is basically:
> - push all refs, i.e., a "+refs/*:refs/*" refspec
> - enable --prune, to delete any branches that don't exist on the local
> But you can do those two things separately if you like. So your options
> are either:
> 1. Drop the pruning (in which case deleted branches from the sync may
> accumulate, but depending on the patterns that may or may not be a
I don't think that's a problem. Or rather, I'd be willing to try it
and see if it becomes a problem.
That said; does "drop the pruning" mean simply removing "--prune"
from the remove update? I did that, but it still deletes my test-branch
on push. Is there an implicit pruning happening due to some
configuration option or the specific commands I'm using?
> 2. Use two different namespaces for the synced branches and the
> private ones (e.g., refs/mirror/* in addition to your branches in
> refs/heads/*). The obvious downside is that anybody cloning your
> downstream mirror doesn't pick up refs/mirror unless they configure
> that refspec explicitly.
This sounds very useful. How would one go about setting up this