1. 8

  2. 10

    Here’s a much simpler alternative: https://gist.github.com/jbenet/ee6c9ac48068889b0912

    1. 1

      I’m not sure how in that proposal you alleviate the merge bubbles. If you have more than one person working at a time, it’s relatively intractable.

      Because git rebase is a manual race between developers to get in, and the merge would be successful anyways, I haven’t seen projects with greater than 5 devs really manage anything like that without something like Gerrit.

      1. 4

        So use Gerrit. You should be doing code review anyway with >5 devs.

    2. 4

      The post date is 2010, this model has become known as Git Flow.

      I like GitHub Flow a lot better. This is elegantly described at https://guides.github.com/introduction/flow/index.html but originally discussed http://scottchacon.com/2011/08/31/github-flow.html

      1. 2


        In practice, Git Flow as described in the linked article is too complex for most uses.

      2. 1

        The fact we need posts like this makes me think we need something better than git.

        It reminds me of programming in PHP vs programming in Haskell. In Haskell, there are many ways of solving a problem. Most of them are just further abstractions on top of what you’ve already done, and you can discover them yourself as you learn the language. In PHP, there are many ways of solving a problem but 99% of them are wrong, and there’s nothing in the language to guide you towards the correct answer.

        Git is like PHP. There’s too many ways to get things (simple tasks even) done. 99% of them are wrong, and it’s too easy to do things the wrong way.

        Here’s a “fun” exercise: you have a repository with unstaged changes and you want to clone a subrepo into it. You accidentally run git pull <url> instead of clone. How do you save your repository? Hint: the vast majority of what you type now will probably (I haven’t studied 400 pages of docs on git’s internals, so I can’t say this with complete confidence) nuke your changes. Good luck!

        I’d love to not have to use Git, but having a busy looking Github page is mandatory for job applications as a graduate. Fugitive’s :GDiff interactive staging is really nice too.

        1. 1

          This is an ancient post IIRC. Did OP just copy it and put it on his site with a new date? the graphs are even the same. hmm

          1. 1

            This is the original post. Looks like the site design may have changed, though.