Prevents users from accidentally crossing gaps in their history and adds an
overwride. In most cases undoing across a gap isn't desired as the connection
between the pre and post states is unkown. While undoing across a gap is not
destructive or inherently risky, it is inherently confusing to the user since
we don't know how many and what commands where run. Furthermore, there is no
guarantee that the pre and post states of a gap are actually connected in any
sane way.
Details
- Reviewers
quark - Group Reviewers
Restricted Project - Commits
- rFBHGXfae05e8c1972: undo: adds -f flag and gap edge case handling
Diff Detail
- Repository
- rFBHGX Facebook Mercurial Extensions
- Lint
Lint Skipped - Unit
Unit Tests Skipped
Event Timeline
hgext3rd/undo.py | ||
---|---|---|
85 | This function is introduced in parent diff is not used there. Can you move this function in the parent diff? |
hgext3rd/undo.py | ||
---|---|---|
85 | Good catch. I'll actually move the call to the parent diff since thats where it belongs. |
The feature looks good. Some end-user facing text could be improved. But we can revisit them later.
hgext3rd/undo.py | ||
---|---|---|
366 | What does "in memory" mean here? | |
403 | The text is shown to end-users (hg undo -h). I think implementation details like "a blank command" might be unfriendly to them. I'd just focus on what end-users care about and keep it short, like: If the undo extension was turned off then turned on, you might lose the ability to undo to certain states. |
This function is introduced in parent diff is not used there. Can you move this function in the parent diff?