mirror of
https://github.com/git/git.git
synced 2024-10-30 22:07:53 +01:00
d8d0a546f0
The rebase.useBuiltin variable introduced in55071ea248
("rebase: start implementing it as a builtin", 2018-08-07) was turned on by default in5541bd5b8f
("rebase: default to using the builtin rebase", 2018-08-08), but had no documentation. Let's document it so that users who run into any stability issues with the C rewrite know there's an escape hatch[1], and make it clear that needing to turn off builtin rebase means you've found a bug in git. 1. https://public-inbox.org/git/87y39w1wc2.fsf@evledraar.gmail.com/ Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
66 lines
2.4 KiB
Text
66 lines
2.4 KiB
Text
rebase.useBuiltin::
|
|
Set to `false` to use the legacy shellscript implementation of
|
|
linkgit:git-rebase[1]. Is `true` by default, which means use
|
|
the built-in rewrite of it in C.
|
|
+
|
|
The C rewrite is first included with Git version 2.20. This option
|
|
serves an an escape hatch to re-enable the legacy version in case any
|
|
bugs are found in the rewrite. This option and the shellscript version
|
|
of linkgit:git-rebase[1] will be removed in some future release.
|
|
+
|
|
If you find some reason to set this option to `false` other than
|
|
one-off testing you should report the behavior difference as a bug in
|
|
git.
|
|
|
|
rebase.stat::
|
|
Whether to show a diffstat of what changed upstream since the last
|
|
rebase. False by default.
|
|
|
|
rebase.autoSquash::
|
|
If set to true enable `--autosquash` option by default.
|
|
|
|
rebase.autoStash::
|
|
When set to true, automatically create a temporary stash entry
|
|
before the operation begins, and apply it after the operation
|
|
ends. This means that you can run rebase on a dirty worktree.
|
|
However, use with care: the final stash application after a
|
|
successful rebase might result in non-trivial conflicts.
|
|
This option can be overridden by the `--no-autostash` and
|
|
`--autostash` options of linkgit:git-rebase[1].
|
|
Defaults to false.
|
|
|
|
rebase.missingCommitsCheck::
|
|
If set to "warn", git rebase -i will print a warning if some
|
|
commits are removed (e.g. a line was deleted), however the
|
|
rebase will still proceed. If set to "error", it will print
|
|
the previous warning and stop the rebase, 'git rebase
|
|
--edit-todo' can then be used to correct the error. If set to
|
|
"ignore", no checking is done.
|
|
To drop a commit without warning or error, use the `drop`
|
|
command in the todo list.
|
|
Defaults to "ignore".
|
|
|
|
rebase.instructionFormat::
|
|
A format string, as specified in linkgit:git-log[1], to be used for the
|
|
todo list during an interactive rebase. The format will
|
|
automatically have the long commit hash prepended to the format.
|
|
|
|
rebase.abbreviateCommands::
|
|
If set to true, `git rebase` will use abbreviated command names in the
|
|
todo list resulting in something like this:
|
|
+
|
|
-------------------------------------------
|
|
p deadbee The oneline of the commit
|
|
p fa1afe1 The oneline of the next commit
|
|
...
|
|
-------------------------------------------
|
|
+
|
|
instead of:
|
|
+
|
|
-------------------------------------------
|
|
pick deadbee The oneline of the commit
|
|
pick fa1afe1 The oneline of the next commit
|
|
...
|
|
-------------------------------------------
|
|
+
|
|
Defaults to false.
|