branch-util: Add check for duplicated branch point version |
|||
Issue descriptionThe currently working branch-util will allow you to create two branches from the same point. EG: moragues@moragues:~/chromeos/master/src/scripts$ git branch -a | grep 11512 remotes/cros/factory-octopus-11512.B remotes/cros/stabilize-atlas-11512.B This results in a problematic situation for other parts of the build and test infrastructure. Add a default check for this condition and aborting would help avoid this situation. Allowing for a --force override of the rule might make sense, but as far as I know, it is a bad idea to do so.
,
Jan 15
,
Jan 15
factory/release/stabilize/etc... branches should all be independent. branching from the same version shouldn't be a problem. what problems are you referring to ? those should really be fixed if we have code that e.g. there will only ever be one branch associated with "11512".
,
Jan 17
(6 days ago)
Bernie weighed in on the other bug. We have seen issues with change listings between versions. I have also seen build artifacts do strange things. The last time I made this mistake, I was relatively new. Those more experienced that I coached me how to fix it by cherry-picking my (duplicated) branch changes into a non-duplicated branch. Recently, there was a race between two projects. Each of us created a branch within the same hour from the same branch point. factory-octopus-11512.B shows a strange version history. Since it was an official octopus factory branch, we moved atlas to stabilize-atlas-11512.6.B. It seems that there is still some strange behavior there that I don't think is correct or expected.
,
Jan 17
(5 days ago)
Right now I plan on implementing this check in the strictest way possible: one branch per version. We can always relax the constraint later if we deem it not a problem. Maybe a dumb question, but: dgarrett@ how do we avoid buildspec conflicts right now, if at all? If I have factory-1234.B and stabilize-1234.B, what prevents us from generating 1234.2.0.xml twice?
,
Jan 17
(5 days ago)
The code that creates the buildspecs looks for existing files, but exactly what it does, I'm not sure. You probably shouldn't expect it to do the right thing. |
|||
►
Sign in to add a comment |
|||
Comment 1 by moragues@chromium.org
, Jan 11