On Feb 12, 2010, at 1:17 PM, Jesse A Wolfe wrote:



Beats me. In the system we discussed and that I mostly implemented (where the changes necessary to make a commit apply were tracked by the rake task) the answer would have been yes; they would have been kept (as an indexed collection of diffs).

well, either way, I think we need to be very careful when rebasing off of testing.
if testing looks like this today:
testing = Master + FeatureA + FeatureB

and I rebase something off of it like so:
jesse:featureC = Master + FeatureA + FeatureB + FeatureC

and you accept that branch, everything is okay:
luke:featureA succeeded:
    7fab7d2 this is the FeatureA commit
luke:featureB succeeded:
    669831f this is the FeatureB commit
jesse:featureC succeeded:
    ebfe4d8 this is the FeatureC commit

later, FeatureB gets canceled. so, you want:
testing = Master + FeatureA + FeatureC

but FeatureB's commits are in the history of FeatureC, so you actually get:
luke:featureA succeeded:
    7fab7d2 this is the FeatureA commit
jesse:featureC succeeded:
    669831f this is the FeatureB commit
    ebfe4d8 this is the FeatureC commit

We should make sure to keep an eye on the logs for things bringing in patches we didn't expect.


I definitely agree this is a problem, but I don't see any awesome ways around it without spending a ton of time or switching from branches to commit series.

That being said, 'rebase --onto' does work well in this situation, and it shouldn't be too ridiculous to automate if we name our branches appropriately.

My personal belief, though, is that there will be ugly, heinous cases where this occurs early on, and then we will get burned relatively thoroughly and stop doing it. I think this next release will be especially prone to it because of all of the large-scale refactorings being done.

--
Fallacies do not cease to be fallacies because they become fashions.
    --G. K. Chesterton
---------------------------------------------------------------------
Luke Kanies  -|-   http://reductivelabs.com   -|-   +1(615)594-8199

--
You received this message because you are subscribed to the Google Groups "Puppet 
Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-dev?hl=en.

Reply via email to