Page MenuHomePhabricator

Configure Gerrit to cherry-pick
Closed, DeclinedPublic

Description

Hi all. Presently Gerrit is configured to create merge commits rather than cherry-pick additions. This makes for a really tangled git history...

% git log --graph --pretty=format:'%Cred%h%Creset %ae %C(yellow)%d%Creset - %s %Cblue(%cr)%Creset' --abbrev-commit --date=relative
*   fc9fc32c9 jenkins-bot@gerrit.wikimedia.org  - Merge "[bugfix] don't try to retrieve data until logged in" (11 hours ago)
|\  
| * cf8f6942d info@gno.de  - [bugfix] don't try to retrieve data until logged in (14 hours ago)
* | f9d51bb39 info@gno.de  - [tests] Fix scripttests loader (11 hours ago)
* |   87bf50cbd jenkins-bot@gerrit.wikimedia.org  - Merge "[IMPR] Rename compat2core.py to update_script.py" (15 hours ago)
|\ \  
| * | 3dfe8285c info@gno.de  - [IMPR] Rename compat2core.py to update_script.py (7 days ago)
* | |   5d7221c93 jenkins-bot@gerrit.wikimedia.org  - Merge "Add type hints for APISite.get_tokens()" (15 hours ago)
|\ \ \  
| |_|/  
|/| |   
| * | 61eff79e5 holybiber@4training.net  - Add type hints for APISite.get_tokens() (17 hours ago)
* | |   c320ff664 jenkins-bot@gerrit.wikimedia.org  - Merge "[bugfix] Fix test deprecation suppressions" (17 hours ago)
... etc...

Every few days I rebase my outstanding branches so they don't add to this thicket. Would folks mind if we switch the merge action to cherry-pick additions instead?

Event Timeline

Xqt closed this task as Declined.EditedFri, Jun 11, 4:42 AM
Xqt added a subscriber: Xqt.

We tried this already with "rebase if necessary" action [1] but got problems with the local repository where the patches were no longer in sync with the repository.
Rebase is not necessary if you have not merge conflict but it is also necessary in case of cherry-pick action and a merge conflict ocurres. Much more important is that cherry-pick action does not respect dependencies between Patches and splitting modules would not be possible.

[1] https://gerrit.wikimedia.org/r/plugins/gitiles/pywikibot/core/+/8f0e44d70494176fb4d739c38d6518f739f5d1a0%5E%21/