rebase: rewrite --(no-)autosquash documentation
Rewrite the description of the rebase --(no-)autosquash options to try to make it a bit clearer. Don't use "the '...'" to refer to part of a commit message, mention how --interactive can be used to review the todo list, and add a bit more detail on commit --squash/amend. Signed-off-by: Andy Koppe <andy.koppe@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
297be59456
commit
cb00f524df
@ -589,21 +589,27 @@ See also INCOMPATIBLE OPTIONS below.
|
|||||||
|
|
||||||
--autosquash::
|
--autosquash::
|
||||||
--no-autosquash::
|
--no-autosquash::
|
||||||
When the commit log message begins with "squash! ..." or "fixup! ..."
|
Automatically squash commits with specially formatted messages into
|
||||||
or "amend! ...", and there is already a commit in the todo list that
|
previous commits being rebased. If a commit message starts with
|
||||||
matches the same `...`, automatically modify the todo list of
|
"squash! ", "fixup! " or "amend! ", the remainder of the subject line
|
||||||
`rebase`, so that the commit marked for squashing comes right after
|
is taken as a commit specifier, which matches a previous commit if it
|
||||||
the commit to be modified, and change the action of the moved commit
|
matches the subject line or the hash of that commit. If no commit
|
||||||
from `pick` to `squash` or `fixup` or `fixup -C` respectively. A commit
|
matches fully, matches of the specifier with the start of commit
|
||||||
matches the `...` if the commit subject matches, or if the `...` refers
|
subjects are considered.
|
||||||
to the commit's hash. As a fall-back, partial matches of the commit
|
|
||||||
subject work, too. The recommended way to create fixup/amend/squash
|
|
||||||
commits is by using the `--fixup`, `--fixup=amend:` or `--fixup=reword:`
|
|
||||||
and `--squash` options respectively of linkgit:git-commit[1].
|
|
||||||
+
|
+
|
||||||
If the `--autosquash` option is enabled by default using the
|
In the rebase todo list, the actions of squash, fixup and amend commits are
|
||||||
configuration variable `rebase.autoSquash`, this option can be
|
changed from `pick` to `squash`, `fixup` or `fixup -C`, respectively, and they
|
||||||
used to override and disable this setting.
|
are moved right after the commit they modify. The `--interactive` option can
|
||||||
|
be used to review and edit the todo list before proceeding.
|
||||||
|
+
|
||||||
|
The recommended way to create commits with squash markers is by using the
|
||||||
|
`--squash`, `--fixup`, `--fixup=amend:` or `--fixup=reword:` options of
|
||||||
|
linkgit:git-commit[1], which take the target commit as an argument and
|
||||||
|
automatically fill in the subject line of the new commit from that.
|
||||||
|
+
|
||||||
|
Settting configuration variable `rebase.autoSquash` to true enables
|
||||||
|
auto-squashing by default for interactive rebase. The `--no-autosquash`
|
||||||
|
option can be used to override that setting.
|
||||||
+
|
+
|
||||||
See also INCOMPATIBLE OPTIONS below.
|
See also INCOMPATIBLE OPTIONS below.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user