[Scummvm-devel] Switching ScummVM repository to Git
Bertrand Augereau
bertrand_augereau at yahoo.fr
Tue Jun 15 21:34:23 CEST 2010
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
>
More information about the Scummvm-devel
mailing list