[ditz-talk] a modest proposal for collaboration

William Morgan wmorgan-ditz at masanjin.net
Fri Apr 11 15:30:13 EDT 2008

Here's an experiment I'd like to try for how to collaborate on ditz.  I
think this will make adding your code to ditz easier and quicker, and it
will put me in more of a maintainership role. (Which is good because I
need to get back to working on Sup!)

I'm going to make an 'edge' branch. It will be like the 'next' branch in
Sup, except with a better name. If you track it, you will get all the
latest and greatest features, at the risk of encountering some

The master branch will be like the master branch in Sup: it will consist
of stable features that will be included in the next release. If you
track it, you "should" never encounter bugs.

Trivial changes I will accept via email as usual and will merge as

For non-trivial changes (i.e. things that require more than one commit,
or things that have a non-zero probability of needing further
refinement), here's what I ask:

  - Publish a "feature branch" with a descriptive name on your Gitorious
    repo, containing just the commits for that feature.

  - Every time you make some changes that you want added to edge, make a
    merge request.

  - When you make bugfixes or modifications of that feature, make them
    to that branch, and make another merge request.

In return, here's what I promise:

  - I will apply merge requests to edge with little to no review, as
    soon as I receive it. Getting code into edge should be fast and

  - If I have a change I'd like to make to a feature that you maintain,
    I will send YOU a patch. (Or, if it's non-trivial, I'll publish a
    branch and send you a merge request.)

  - I will maintain a 'bugs' branch with the current state of everything
    (using ditz, of course), and update the website with the report,

  - I will maintain the master and edge branches, merging feature
    branches down to master once they seem stable.

  - I will build and publish releases as appropriate.

So, for example, I would love to see a 'hook' branch, a 'tasks' branch,
a 'shell-completion' branch out there that I can merge.

Comments? Suggestions?

William <wmorgan-ditz at masanjin.net>

More information about the ditz-talk mailing list