On Sunday, 16 December 2012 at 07:35:27 UTC, deadalnix wrote:
The only goal that is coming is trying to reach some level of
stability. Everything else is completely different.
There are still some clear similarities between what Debian is
doing and what I presume most people do in software development.
For the software I develop we have what is called a "live"
branch, which is the code that is in active use by our customers.
This branch corresponds to the stable branch we're trying to
achieve, and it only gets critical bug fixes until the next major
update which includes new features and/or major adjustments as
well as non-critical bug fixes. We also have a testing branch,
which includes the latest pre-release code for the next major
update. This code is running on a VM and is tested by our
customers (and the developers), under conditions similar to
"live". There's also a common "dev" branch for the code which is
in development but not yet ready for testing. This branch
corresponds to the Dev (Master) Branch, The master branch gets
updated from individual forks owned by each developer.
Coordination among developers is essential to prevent
duplications and major conflicts.
So in essence we're following a similar model to the Debian model
of (Master Dev) which is "unstable " => Pre-release Testing =>
Stable.
It works great, and I see no way to remove any of the branches
without seriously compromising the end result.
For example, we can't go directly from Dev to Stable, that would
be like committing suicide. We can't use testing for dev updates,
it's too destabilizing and we'd never get a properly tested
stable release out unless all development updates were halted for
a long period of time, but then the individual forks would pile
up with major changes that would be very difficult to sort out
when merged all back together.
We need 3 common branches, and I just don't see a way out of that.
BTW, I'm using Mercurial which has many similarities to Git.
Unfortunately I don't know my way around Git very well at this
time.
--rt