to validate it is likely to result in a painful cycle of race-to-merge
conflicts, rebasing and waiting again for the tests to run.
So I would like to propose a new strategy: staging branches.
Every major branch would have a parallel branch:
cassandra-2.0 - cassandra-2.0_staging
cassandra-2.1 - cassandra
. Alternatively,
uploading the result to your development tree and waiting a few hours for
CI to validate it is likely to result in a painful cycle of race-to-merge
conflicts, rebasing and waiting again for the tests to run.
So I would like to propose a new strategy: staging branches.
Every
to run.
So I would like to propose a new strategy: staging branches.
Every major branch would have a parallel branch:
cassandra-2.0 - cassandra-2.0_staging
cassandra-2.1 - cassandra-2.1_staging
trunk - trunk_staging
On commit, the idea would be to perform the normal merge process
to run.
So I would like to propose a new strategy: staging branches.
Every major branch would have a parallel branch:
cassandra-2.0 - cassandra-2.0_staging
cassandra-2.1 - cassandra-2.1_staging
trunk - trunk_staging
On commit, the idea would be to perform the normal merge process
the result to your development tree and waiting a few hours for
CI to validate it is likely to result in a painful cycle of race-to-merge
conflicts, rebasing and waiting again for the tests to run.
So I would like to propose a new strategy: staging branches.
Every major branch would have
that will have some amount of concurrency like those staging branches.
Even if such problems are rare, better to avoid them in the first place
by
simply
commit new fixup commits as we currently do. Granted this give you a
slightly
less clean history but to the best of my knowledge
is always releasable definitely has some wiggle room
because you have to define what your release process is.
If your requirement is that at any time you be able to tag trunk and ship
it within minutes then yes staging branches help solve that problem.
The reality is that the release process
that will have some amount of concurrency like those staging
branches.
Even if such problems are rare, better to avoid them in the
first
place
by
simply
commit new fixup commits as we currently do. Granted this
give
you
a
slightly
less clean history
staging
branches.
Even if such problems are rare, better to avoid them in the
first
place
by
simply
commit new fixup commits as we currently do. Granted this
give
you
a
slightly
less clean history but to the best of my knowledge
On Thu, May 7, 2015 at 7:13 AM, Aleksey Yeschenko alek...@apache.org
wrote:
That said, perhaps it’s too much change at once. We still have missing
pieces of infrastructure, and TE is busy with what’s already back-logged.
So let’s revisit this proposal in a few months, closer to 3.1 or 3.2,
I would argue that we must *at least* do the following for now.
If we get this right, the extra staging branches can certainly wait to be
assessed until later.
IMO, any patch should have a branch in CI for each affected mainline
branch, and should have the commit completely wired up
will be annoying for everyone. Editing commits
that
have
been shared is almost always a bad idea and that's especially true for
branch
that will have some amount of concurrency like those staging branches.
Even if such problems are rare, better to avoid them in the first place
by
simply
always a bad idea and that's especially true
for
branch
that will have some amount of concurrency like those staging
branches.
Even if such problems are rare, better to avoid them in the first
place
by
simply
commit new fixup commits as we currently do. Granted
to validate it is likely to result in a painful cycle of
race-to-merge
conflicts, rebasing and waiting again for the tests to run.
So I would like to propose a new strategy: staging branches.
Every major branch would have a parallel branch:
cassandra-2.0 - cassandra-2.0_staging
will be annoying for everyone. Editing commits
that
have
been shared is almost always a bad idea and that's especially true
for
branch
that will have some amount of concurrency like those staging
branches.
Even if such problems are rare, better to avoid them in the first
place
some wiggle room
because you have to define what your release process is.
If your requirement is that at any time you be able to tag trunk and ship
it within minutes then yes staging branches help solve that problem.
The reality is that the release process always takes low single digit days
because
that will have some amount of concurrency like those staging
branches.
Even if such problems are rare, better to avoid them in the first
place
by
simply
commit new fixup commits as we currently do. Granted this give you
a
slightly
less clean history but to the best of my knowledge
is almost always a bad idea and that's especially
true
for
branch
that will have some amount of concurrency like those staging
branches.
Even if such problems are rare, better to avoid them in the
first
place
by
simply
commit new fixup commits as we
a link to cassci for both of those branches passing doesn’t
qualify as done to me.
That alone will be enough to catch most merge-related regressions.
Going with staging branches would also prevent any issues from concurrent
pushes, but given the opposition, I’m fine with dropping
argue that we must *at least* do the following for now.
If we get this right, the extra staging branches can certainly wait to be
assessed until later.
IMO, any patch should have a branch in CI for each affected mainline
branch, and should have the commit completely wired up (CHANGES.txt
, 2015 at 19:02:36, Benedict Elliott Smith (
belliottsm...@datastax.com) wrote:
I would argue that we must *at least* do the following for now.
If we get this right, the extra staging branches can certainly wait to be
assessed until later.
IMO, any patch should have a branch in CI
21 matches
Mail list logo