I agree we don't want to multiply unnecessary branches or slow down the process with bureaucracy. I propose we have: 1- a "release" branch, where we drop off 2.0. The head of that branch should always be the properly tagged latest release, which will someday be 2.1, etc. We don't (currently) plan to support multiple old version branches, so just one branch is enough. 2- the "master" branch, where development happens. If possible one should not push to this branch without passing proper tests, though shit may happen when some "obviously right" change breaks things on some unintended obscure case. 3- various transient topic branches, when applicable, for experimental development. Note that in my rush to release 2.0, I haven't stuck to any rule such as "any feature should have a test". Maybe we should institute this rule for any future feature or bug fix. [ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ] There is one rule for the industrialist and that is: Make the best quality of goods possible at the lowest cost possible, paying the highest wages possible. — Henry Ford On 16 June 2010 20:16, Robert Goldman <rpgoldman@sift.info> wrote:
On 6/16/10 Jun 16 -11:13 AM, Faré wrote: ....
Robert: any thoughts re: branching?
I am so far from being a git expert, that I will not venture any suggestions.
A while ago I read the following article which proposes a branching policy for use with git. It seemed, to my limited understanding, reasonable. Perhaps we could adopt some variant of this policy?
http://www.newartisans.com/2009/10/branch-policies-with-git.html
He seems to have many more branches than I would have thought necessary. I don't know that we need a "released," "stable devel," and "bleeding edge" as he does.
Perhaps some sort of variant where we have a
maint branch --- 2.0 with patches for bug fixes
devel branch --- moving towards 2.1
?
I'm inclined to think that we could further minimize/simplify by having the devel branch be master.
We could also have topic branches, like the one I built in order to do the first TRAVERSE mods for module dependencies.
Does that sound reasonable?
Feel free to say "no," since I'm making this up as I go along based on half-remembered blog posts.
best, r