http://hades.name/blog/2010/01/22/git-your-friend-not-foe-vol-2-branches/Hades Blag comments on Git Is Your Friend not a Foe Vol. 2: Branches2010-01-25T21:00:58ZarwaChristoph BartoschekIan MonroeEdwardChristoph BartoschekEdwardMarcos DioneEdwarddjango-atompubhttp://hades.name/blog/2010/01/22/git-your-friend-not-foe-vol-2-branches/#c38Comment on Git Is Your Friend not a Foe Vol. 2: Branches by Edward2010-01-25T21:00:58Z2010-01-25T21:00:58ZEdward<p>Okay, I&#8217;ll try to clarify that in next post,&nbsp;thanks.</p> http://hades.name/blog/2010/01/22/git-your-friend-not-foe-vol-2-branches/#c37Comment on Git Is Your Friend not a Foe Vol. 2: Branches by Marcos Dione2010-01-25T20:55:32Z2010-01-25T20:55:32ZMarcos Dione<p>The first article in this series was great. in this one you got me lots when you started to explain detached heads. I think it stems from the point were you talk about checkouts while not explaining what they are. Maybe a couple more of graphs would explain&nbsp;better?</p> http://hades.name/blog/2010/01/22/git-your-friend-not-foe-vol-2-branches/#c21Comment on Git Is Your Friend not a Foe Vol. 2: Branches by Edward2010-01-24T20:07:46Z2010-01-24T20:07:46ZEdward<blockquote> <p>The way I work in subversion it happens that fixes in released versions are merged into trunk and also that features are backported. With git I have apparently to only work in one&nbsp;direction.</p> </blockquote> <p>(I presume you meant &#8220;that fixes are&nbsp;backported&#8221;)</p> <p>No, you have not. That document describes a typical workflow agreement, that is followed by git.git. As it says, &#8220;Do not always take them [the rules] literally; you should value good reasons for your actions higher than manpages such as this one&#8221;. I&#8217;ve worked in a project, where fixes were backported too — with cherry-pick. And it worked out just fine. Git gives you the freedom to create your own workflow, not imposing you a single&nbsp;one.</p> <p>The direction of work is a question of taste; <span class="caps">AFAIK</span>, most people consider it easier (from a programmer&#8217;s perspective) to forward-port fixes, not backport&nbsp;them.</p> http://hades.name/blog/2010/01/22/git-your-friend-not-foe-vol-2-branches/#c17Comment on Git Is Your Friend not a Foe Vol. 2: Branches by Christoph Bartoschek2010-01-24T18:50:40Z2010-01-24T18:09:50ZChristoph Bartoschek<p>Nobody said that it is unfair. git merge and svn merge are just differnt concepts and one should know what to compare. svn merge with merge tracking is better than git cherry-pick. And git merge is better because svn does not have such a&nbsp;thing.</p> <p>Given the workflows and concepts of svn there is no need for a functionality like git&nbsp;merge. </p> <p>The git workflow has different problems than the svn one. The rules mentioned in the document Edward linked should be followed. For example the rule &#8220;Merge upwards&#8221;. The way I work in subversion it happens that fixes in released versions are merged into trunk and also that features are backported. With git I have apparently to only work in one&nbsp;direction.</p> <p>However I do not want to defend subversion. Considering everything I would like to switch to git. The only issue that prevents me is a useful svn:externals equivalent to git. git submodules are not&nbsp;usable.</p> http://hades.name/blog/2010/01/22/git-your-friend-not-foe-vol-2-branches/#c16Comment on Git Is Your Friend not a Foe Vol. 2: Branches by Ian Monroe2010-01-24T15:14:23Z2010-01-24T15:14:23ZIan Monroe<p>So it&#8217;s unfair to compare svn merge and git merge, since the latter is so much better? At least that&#8217;s how I read&nbsp;it.</p> <p>Of course <span class="caps">SVN</span> and Git have very different workflows, Edward is just making the argument that Git&#8217;s is&nbsp;better.</p> http://hades.name/blog/2010/01/22/git-your-friend-not-foe-vol-2-branches/#c11Comment on Git Is Your Friend not a Foe Vol. 2: Branches by Edward2010-01-24T13:38:49Z2010-01-24T13:04:44ZEdward<p>There is a manual page called gitworkflows (<a rel="nofollow" href="http://www.kernel.org/pub/software/scm/git/docs/gitworkflows.html">http://www.kernel.org/pub/software/scm/git/docs/gitworkflows.html</a>) that hopefully answers your&nbsp;question.</p> <p>I tried to cover some of the pitfalls I&#8217;ve seen new Git people falling into (including myself), maybe I will post about more complicated things&nbsp;later.</p> http://hades.name/blog/2010/01/22/git-your-friend-not-foe-vol-2-branches/#c6Comment on Git Is Your Friend not a Foe Vol. 2: Branches by Christoph Bartoschek2010-01-24T12:19:23Z2010-01-24T12:15:07ZChristoph Bartoschek<p>I would say that you overstimate the complexity of subversion merges. Especially in recent versions it got&nbsp;better. </p> <p>However one cannot compare git merges and subversion merges because, as subversion does not know branching as it is done in git, it does not know merging. If one wants to compare, then one has to compare git cherry-pick with svn merge. And here svn has now a way better implementation. Git cherry-pick has the same problems the old svn merge implementation&nbsp;had.</p> <p>My biggest problem with git is that I do not completely grasp how the workflow looks like when there are different versions of a software and how fixes are distributed between the versions. With subversion this is easy because one just merges the changes but if I understand it correctly the flow of changes is important in git to not mess up during merges. Are you going to explain how the interactions between development, trunk, beta and released versions&nbsp;are?</p> http://hades.name/blog/2010/01/22/git-your-friend-not-foe-vol-2-branches/#c3Comment on Git Is Your Friend not a Foe Vol. 2: Branches by arwa2010-01-24T12:21:21Z2010-01-24T11:14:05Zarwa<p>Regarding svn: &#8220;If you want to merge it back, you need to remember the revision number, when you created the branch&#8221;. This is no longer true in up to date svn versions since a year or so. This is handled by svn internally now what really is a big step for&nbsp;svn.</p>