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