Options for revert
Options for the checkout
For merge commits, the "mainline" is treated as the parent.
Options for the merging
See Implementation
Options for revert