Page MenuHomePhabricator

Support automatic commit generation in Phabricator
Closed, InvalidPublic

Description

For feature parity with Gerrit, we would need:

  • A simple way (in Gerrit it's click a button, optionally edit the commit summary, click another button, done) to generate reverts of already-merged commits
    • We would probably also want to be able to revert the entirety of a multi-commit change at once (Gerrit doesn't have multi-commit changes)
  • A simple way to generate a cherry-pick of a commit (either merged or unmerged) submitted for branch A onto branch B
  • A one-click way to rebase a commit B that is based on A onto A' (amended version of A)
  • Optionally, a one-click way to rebase a commit onto latest master (or whatever branch it's supposed to be based on)

Details

Reference
fl309

Revisions and Commits

Event Timeline

flimport raised the priority of this task from to Medium.Sep 12 2014, 1:35 AM
flimport added a project: Gerrit-Migration.
flimport set Reference to fl309.
Qgil lowered the priority of this task from Medium to Low.Oct 9 2014, 11:13 PM

Is there really no way to perform equivalent actions in Differential?

If there isn't, how relevant are these features? Should we work on them for T560: Proof of concept of code review in Phabricator?

epriestley added a commit: Unknown Object (Diffusion Commit).Mar 4 2015, 8:24 AM

All of these things can be achieved directly in git. To me, the gerrit user interface is a terrible way to do this type of workflow and simply replicating it in phabricator is counter productive.

I agree with Mukunda here; I don't think replicating all of those buttons should be a blocker.

In T182#1306220, @greg wrote:

I agree with Mukunda here; I don't think replicating all of those buttons should be a blocker.

Also, upstream is going to implement this eventually.

Also, upstream is going to implement this eventually.

And now it looks like "eventually" became "soon": it's already done upstream but not quite ready for general consumption yet.

greg claimed this task.

This task was a collection of subtasks really. I've created those tasks and am closing this one as invalid since it's not really a tracking task (there are other tracking tasks for this topic already):

  • A simple way (in Gerrit it's click a button, optionally edit the commit summary, click another button, done) to generate reverts of already-merged commits

T117774: Support one-click creation of reverts in Differential/Diffusion

  • A simple way to generate a cherry-pick of a commit (either merged or unmerged) submitted for branch A onto branch B

T117776: Support simple ("one-click") generation of cherry-pick Differentials between branches

  • A one-click way to rebase a commit B that is based on A onto A' (amended version of A)
  • Optionally, a one-click way to rebase a commit onto latest master (or whatever branch it's supposed to be based on)

T117779: Support "one-click" rebasing of a Differential onto current master