[Scummvm-devel] Switching ScummVM repository to Git
Alex Bevilacqua
alexbevi at gmail.com
Tue Jun 15 21:55:22 CEST 2010
Somone (Filippos?) brought this up a little while back. I've personally been
using this model at work ever since and have found it very helpful.
http://nvie.com/git-model
<http://nvie.com/git-model>If you're looking at git again, this article may
help motivate others as well (assuming you didn't read it the first time
around).
Cheers,
Alex
On Tue, Jun 15, 2010 at 3:34 PM, Bertrand Augereau <
bertrand_augereau at yahoo.fr> wrote:
> Hello guys,
>
> One thing that is very important to specify in such a workflow is the
> short-lived-branches-merges policy.
> For instance:
> "You have to rebase your work on the trunk (git pull --rebase) so that the
> history stays the more linear possible"
> or you can allow small merges as an alternative (git pull) (I prefer the
> linear version)
>
> Forced-updates are also something to consider (for instance explicitly
> forbid those :) )
>
> Cheers,
> a git-lover
>
>
> --- En date de : Mar 15.6.10, Eugene Sandulenko <sev at scummvm.org> a
> écrit :
>
> > De: Eugene Sandulenko <sev at scummvm.org>
> > Objet: Re: [Scummvm-devel] Switching ScummVM repository to Git
> > À: sev at scummvm.org
> > Cc: "ScummVM devel" <scummvm-devel at lists.sourceforge.net>
> > Date: Mardi 15 juin 2010, 21h18
> > Hi guys again,
> >
> > Now I am back and I got some results.
> >
> > I love git more and more. I could shuffle my commits,
> > review the commit
> > log messages, split some of them, perform last minute
> > changes, and all
> > that in a convenient way. Not to mention how FAST
> > everything was.
> >
> > To reproduce the results I got, do following:
> >
> > mkdir ~/scummvm-svn
> > rsync -av scummvm.svn.sourceforge.net::svn/scummvm/*
> > ~/scummvm-svn
> >
> > This will fetch whole ScummVM SVN repository. Please be
> > nice to sf.net,
> > as it is 800MB download.
> >
> > cd ~
> > git clone git://gitorious.org/svn2git/svn2git.git
> > cd svn2git
> > qmake
> > make
> >
> > This will create svn2git tool which I used (there are at
> > least 3 of
> > them, but other 2 are dumber). It requires QT4. Sorry. I
> > would write it
> > in Perl or Pythong and forget about 200MB downloads.
> >
> > ./svn-all-fast-export --identity-map
> > authors.log.sort --rules \
> > scummvm.rules --add-metadata ~/scummvm-svn
> >
> > scummvm.rules and authors.log.sort files are attached.
> >
> > This will take awhile (50 minutes on Ubuntu running on
> > Windows 7 laptop
> > with 2GHz Core Duo processor.
> >
> > As a result you will get 4 repositories:
> >
> > legacy -- Contains all things considered to be
> > redundant, that is
> > docs, engine-data, residual, scummex, vendor.
> > Master is engine-data
> > root
> >
> > scummvm -- All branches, tags. Master is trunk.
> > Additionally
> > vendor/fonts contents put there as fonts
> > branch, since we need to
> > move it to gui/ soon
> >
> > tools -- Tools with all branches and tags
> >
> > websites -- all websites as branches. master is
> > web/trunk
> >
> > You may see full list of branches in attached git-branches
> > file.
> >
> > No git tags will be there, those will be manually added
> > after the
> > import.
> >
> > After `git gc --aggressive` scummvm repository is under
> > 70MB (yay),
> > websites is 130MB (graphics), and total whole thing is
> > 220MB. Not bad,
> > not bad.
> >
> >
> > So now, let's discuss how we can proceed with the move.
> >
> > I am ready to perform the switch anytime. Current SVN
> > repository will
> > be put into read-only mode and will stay for reference.
> >
> >
> > As you know, Git gives /much/ more flexibility to
> > development
> > strategies. Most natural one which will differ less from
> > our current
> > approach (and thus will have lesser learning curve) is
> > described at
> > 'Long-Running Branches' subheading in Pro-Git book
> > (http://progit.org/book/ch3-4.html). This will basically
> > represent what
> > we have now with trunk, branches and tags.
> >
> > Of course, there will be pre-release branches which will
> > deviate from
> > master.
> >
> > Also it will be Centralized workflow described at
> > (http://progit.org/book/ch5-1.html), where each
> > developer will have
> > permissions to commit to our main repository. No
> > dictator-leutenant,
> > we're not that big.
> >
> > Now let's discuss. Soon, after analysis of your reaction
> > and measure of
> > involvement, I will propose the schedule of the switch
> > over.
> >
> > Also please review authors.log.sort, and check that I did
> > not misspell
> > somebody's name.
> >
> >
> > Eugene
> >
> > -----La pièce jointe associée suit-----
> >
> >
> ------------------------------------------------------------------------------
> > ThinkGeek and WIRED's GeekDad team up for the Ultimate
> > GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the
> > lucky parental unit. See the prize list and enter to
> > win:
> > http://p.sf.net/sfu/thinkgeek-promo
> > -----La pièce jointe associée suit-----
> >
> > _______________________________________________
> > Scummvm-devel mailing list
> > Scummvm-devel at lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/scummvm-devel
> >
>
>
>
>
>
> ------------------------------------------------------------------------------
> ThinkGeek and WIRED's GeekDad team up for the Ultimate
> GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the
> lucky parental unit. See the prize list and enter to win:
> http://p.sf.net/sfu/thinkgeek-promo
> _______________________________________________
> Scummvm-devel mailing list
> Scummvm-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/scummvm-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.scummvm.org/pipermail/scummvm-devel/attachments/20100615/d146fc6c/attachment.html>
More information about the Scummvm-devel
mailing list