Create and maintain staging branches after the devel branches are
updated. We already push refs/heads/<namespace>/*, so these will also
get pushed as part of the importer run.
ACL handling is not implemented. It remains to be determined how ACL
handling will eventually land in Launchpad. See LP: #1993290 and
LP: #1993303 for details. Depending on the implementation, we may be
able to manage ACLs in team-wide or distribution-wide configuration and
not require any implementation inside the importer at all.
"git clone" by default sets up branch.<name>.remote and
branch.<name>.merge so that various git tooling can follow and set
default accordingly, so we should do the same when we create equivalent
branches.
We're going to need to access these names separately soon, so adjust the
function paramaters to require them to be provided separately, and
adjust all callers (both of them) accordingly.
This should not result in any functional change.
This is also a good opportunity to add a docstring to specify the
function better.
Acting on specific feedback, this provides the scripts formerly known as
gu-build and emptydirfixup.py as git-ubuntu.experimental-build and
git-ubuntu.experimental-emptydirfixup, to make them easier to consume.
They aren't being adopted into git-ubuntu "proper" yet as that would
imply CLI stability at a level that doesn't currently exist for them.
Hopefully this is a middle ground that will make them more accessible,
but without implying stability.
Snaps require additional entry points to be prefixed by the main snap
name (ie. "git-ubuntu."). This means the names a bit cumbersome,
although they do tab-complete. I recommend that interested developers
arrange local aliases such as gu-build and gu-emptydirfixup.