-
Edward Lemur authored
The failures were caused by: 1 - When one change (call it #2) has been uploaded on top of another (#1), and (#1) has already landed, git cherry-pick complains that the range '<merge-base>..<change #2>' contains empty commits, since the contents of (#1) are already present in the tree. 2 - We did not abort the cherry-picking when 'git cherry-pick' failed, so a failure made all further CLs in that bot fail. This CL fixes it and prevents further regressions. Original change's description: > gclient_scm: Use cherry-picking instead of rebasing. > > Currently gclient might include extra commits when applying patches. > For example, in this case we checkout |patch| and rebase it on top of |base|, > thus including an |extra commit| that we shouldn't. > > o master > | > . o patch > |/ > o extra commit > | > o base (what gclient synced src at) > > This change uses the merge-base between |patch| and |master| to cherry-pick only > the changes belonging to the patch. > > Bug: 850812 > Change-Id: I138192f96bc62b1bb19b0e1ad952c8f8c67631c4 > Reviewed-on: https://chromium-review.googlesource.com/1137052 > Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org> > Reviewed-by: Aaron Gable <agable@chromium.org> Bug: 850812 Change-Id: I83f38d0a258df3f5cd89e277f0d648badff29a22 Reviewed-on: https://chromium-review.googlesource.com/1139554Reviewed-by:
Aaron Gable <agable@chromium.org> Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
f9afc77f