[csw-maintainers] experimental: subversion --> git, mercurial
rupert THURNER
rupert at opencsw.org
Sat Jun 25 12:58:12 CEST 2011
i see, you are of course right. lets tackle it stepwise thought.
currently gar is syncronised manually on git and hg. lets assume we would
extend this experiment a little bit, deciding for the moment onto git. what
i would miss currently are two things:
1. a short description how i set up my environment so i can deliver, say
mercurial. currently i do check out the whole mgar tree, the externals are
replaced with symbolic links. what would be the best approach if gar is in
git?
cd ~
pkg=mercurial
mkdir git-experiment
cd git-experiment
git clone https://rthurner@github.com/opencsw/gar.git gar
git svn clone
https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/pkg/${pkg} ${pkg}
ln -s ${pkg}/trunk/gar gar
2. how would i create a new package stub using git?
rupert
On Mon, Jun 20, 2011 at 03:27, Ben Walton <bwalton at opencsw.org> wrote:
> Excerpts from rupert THURNER's message of Sun Jun 19 09:00:55 -0400 2011:
>
> Hi Rupert,
>
> > as an experiment, i tried to convert the subversion gar repository to git
> > and mercurial:
> > * http://code.google.com/p/gar/ (hg)
> > * https://github.com/opencsw/gar (git)
>
> I like this! :) I'm not keen on mercurial given my exposure to it,
> but anything distributed would be a step up.
>
> > what i am not sure is how to handle externals and patches onto them,
> > but i saw posts like:
> > *
> >
> http://www.undefinedrange.com/posts/git-submodules-external-repositories-and-deployment
>
> > what do you think, in general about a conversion, and in special,
> > how to do this patching?
>
> I'm not sure what you mean by 'patches onto them' but basically,
> submodules suck for our use case, in my estimation. They're excellent
> in projects where you're pulling in external code as a source library.
> The most common example I see is that many projects have gnulib as a
> submodule. When they're polishing a new release, they update the
> gnulib submodule to current as part of that process. They won't work
> nicely in our pkg/$foo/trunk setup though as we'd be constantly
> required to update the sha1 reference to the submodule for every
> recipe change.
>
> As Sebastian mentioned, we can (and should!) do away with externals
> and, if they're still in use, the old garlinks in favour of the new
> mgar wrapper.
>
> If we did this, we could (as long as Sebastian is on board), merge
> mgar directly into the gar/v2 git repository and release an actual
> package for it. mgar is packaged now, but it could be extended to
> deliver the rest of the gar code with it.
>
> The impact of this would be that people would be forced to use mgar to
> interact with gar (or create their own new frankenstein) and people
> would need to learn/use git. Many of us are already using git where
> possible, so that's not likely a big hurdle. Using mgar is a positive
> experience and doesn't change workflow much beyond s/(svn|gmake)/mgar/
> now.
>
> Gar would have a package and we could still have a devel mode for gar
> where the local git (or hg) repo is tracked against the head of the
> main branch. Good for users, good for devs.
>
> This might be a nice test of the waters for a move away from svn
> instead of attempting to move gar and all of the recipes in one shot.
>
> Is anyone else excited by this idea?
>
> Thanks
> -Ben
> --
> Ben Walton
> Systems Programmer - CHASS
> University of Toronto
> C:416.407.5610 | W:416.978.4302
>
> _______________________________________________
> maintainers mailing list
> maintainers at lists.opencsw.org
> https://lists.opencsw.org/mailman/listinfo/maintainers
> .:: This mailing list's archive is public. ::.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opencsw.org/pipermail/maintainers/attachments/20110625/7bb188a6/attachment.html>
More information about the maintainers
mailing list