New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Undo of a range / selection of commits #201

Closed
borekb opened this Issue Oct 26, 2015 · 1 comment

Comments

Projects
None yet
2 participants
@borekb
Copy link
Member

borekb commented Oct 26, 2015

This is an imported issue, original reference WP-201, created on 28 Nov 2014.

Broaden the current functionality where rollback is essentially an undo of a fixed range of commits. The user should be able to select a range to undo, or even possibly leave out some commit "in the middle".

This will be difficult especially in terms of UI. Maybe support this first only via WP-CLI?

@borekb

This comment has been minimized.

Copy link
Member

borekb commented Feb 10, 2016

We discussed today what needs to be done and done some rough estimates. The work will probably need to be done in these two main areas:

Data level (Git)

  • We need to revert a set of commits. It should not be technically a problem, see e.g. here.
  • "Multi-revert" needs a new ChangeInfo type - or we can possibly use ChangeInfoEnvelope. Again, should be relatively straightforward.

UI

  • We agreed on checkboxes that will be visible all the time, sort of like on the main posts page where the user can select checkboxes and run bulk actions. Quick links to undo a single commit and roll back to a state will be kept.
  • To select a range of commits, Shift+click will be supported.
  • Paging is a bit tricky. @JanVoracek mentioned that we might want to switch to "infinite loading, but on explicit click on a 'load more' button" approach but that's probably not feasible for 3.0. It will probably be easier for the React app to remember the state on all the pages and display some small piece of UI above the table, notifying user that he/she has some more commits selected on other pages. There might also be a button to clear the selection there.

Overall, this should be doable in the 3.0 timeframe so we're keeping it in the current milestone. Good luck @vasek17 :)

@borekb borekb added the size: l label Feb 10, 2016

@vasek17 vasek17 added the in progress label Mar 11, 2016

vasek17 added a commit that referenced this issue Mar 21, 2016

vasek17 added a commit that referenced this issue Mar 21, 2016

vasek17 added a commit that referenced this issue Mar 21, 2016

vasek17 added a commit that referenced this issue Mar 21, 2016

vasek17 added a commit that referenced this issue Mar 21, 2016

vasek17 added a commit that referenced this issue Mar 21, 2016

vasek17 added a commit that referenced this issue Mar 21, 2016

@vasek17 vasek17 referenced this issue Mar 21, 2016

Merged

Undo of a range / selection of commits #798

2 of 2 tasks complete
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment