From: Junio C Hamano Date: Fri, 2 Nov 2018 02:04:58 +0000 (+0900) Subject: Merge branch 'js/rebase-i-break' X-Git-Tag: v2.20.0-rc0~84 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/789b1f70422d5c9ffb3a0ecb11284aa0ac13985e?hp=-c Merge branch 'js/rebase-i-break' "git rebase -i" learned a new insn, 'break', that the user can insert in the to-do list. Upon hitting it, the command returns control back to the user. * js/rebase-i-break: rebase -i: introduce the 'break' command rebase -i: clarify what happens on a failed `exec` --- 789b1f70422d5c9ffb3a0ecb11284aa0ac13985e diff --combined Documentation/git-rebase.txt index 432baabe33,6b71694b0d..3407d835bd --- a/Documentation/git-rebase.txt +++ b/Documentation/git-rebase.txt @@@ -243,15 -243,11 +243,15 @@@ leave out at most one of A and B, in wh --keep-empty:: Keep the commits that do not change anything from its parents in the result. ++ +See also INCOMPATIBLE OPTIONS below. --allow-empty-message:: By default, rebasing commits with an empty message will fail. This option overrides that behavior, allowing commits with empty messages to be rebased. ++ +See also INCOMPATIBLE OPTIONS below. --skip:: Restart the rebasing process by skipping the current patch. @@@ -275,8 -271,6 +275,8 @@@ branch on top of the branch conflict happens, the side reported as 'ours' is the so-far rebased series, starting with , and 'theirs' is the working branch. In other words, the sides are swapped. ++ +See also INCOMPATIBLE OPTIONS below. -s :: --strategy=:: @@@ -286,10 -280,8 +286,10 @@@ + Because 'git rebase' replays each commit from the working branch on top of the branch using the given strategy, using -the 'ours' strategy simply discards all patches from the , +the 'ours' strategy simply empties all patches from the , which makes little sense. ++ +See also INCOMPATIBLE OPTIONS below. -X :: --strategy-option=:: @@@ -297,8 -289,6 +297,8 @@@ This implies `--merge` and, if no strategy has been specified, `-s recursive`. Note the reversal of 'ours' and 'theirs' as noted above for the `-m` option. ++ +See also INCOMPATIBLE OPTIONS below. -S[]:: --gpg-sign[=]:: @@@ -334,21 -324,17 +334,21 @@@ and after each change. When fewer lines of surrounding context exist they all must match. By default no context is ever ignored. ++ +See also INCOMPATIBLE OPTIONS below. --f:: +--no-ff:: --force-rebase:: - Force a rebase even if the current branch is up to date and - the command without `--force` would return without doing anything. +-f:: + Individually replay all rebased commits instead of fast-forwarding + over the unchanged ones. This ensures that the entire history of + the rebased branch is composed of new commits. + -You may find this (or --no-ff with an interactive rebase) helpful after -reverting a topic branch merge, as this option recreates the topic branch with -fresh commits so it can be remerged successfully without needing to "revert -the reversion" (see the -link:howto/revert-a-faulty-merge.html[revert-a-faulty-merge How-To] for details). +You may find this helpful after reverting a topic branch merge, as this option +recreates the topic branch with fresh commits so it can be remerged +successfully without needing to "revert the reversion" (see the +link:howto/revert-a-faulty-merge.html[revert-a-faulty-merge How-To] for +details). --fork-point:: --no-fork-point:: @@@ -369,22 -355,19 +369,22 @@@ default is `--no-fork-point`, otherwis --whitespace=