managing remotes collaboratively with mr
micah at riseup.net
Sat Apr 30 01:04:46 CEST 2011
I am working on a project where there are a number of git repositories
that are added at different times, with different remotes being added
(and probably removed) at different times. I thought a nice way to
coordinate this effort was to use 'mr', but I'm stuck on how to do it.
I have a shared git repository called 'shared-mr' that everyone who is
working on this project checks out initially. In that repository is
contained a .mrconfig. To get started you would check out that
repository, then use 'mr update to create all the other repositories and
their remotes. I was hoping that the 'shared-mr' repository could be
written by everyone involved, and changes be made to the .mrconfig
there, and then a 'mr update' would update that shared-mr .mrconfig and
any changes would be then picked up by 'mr'.
The .mrconfig would look something like this:
update = git remote update
checkout = git clone gitosis at labs.riseup.net:shared-apache apache
post_checkout = cd apache &&
git remote add foo git://foo.ch/apache.git
git remote add bar git://bar.net/modules/apache
git remote add baz git://github.com/baz/apache.git
git remote update
checkout = git clone gitosis at labs.riseup.net:shared-mr
Once you have run 'mr update all the repositories and their remotes are
added, and you can then go about your business.
But what if someone adds a new remote? Because I put things in the
.mrconfig as a 'post_checkout' the new remote will not be added to the
git repository. I could add the remotes twice, in a post_checkout (for
the new person who wants to get them all) and then also as a pre_update,
but that seems a bit ugly.
Thanks for any ideas, or better ways to do this!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 835 bytes
Desc: not available
More information about the vcs-home