summaryrefslogtreecommitdiffstats
path: root/Documentation/config/rebase.txt
blob: 9c248accec2c5d572cf11f26ffcbfe8e7eab1465 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
rebase.backend::
	Default backend to use for rebasing.  Possible choices are
	'apply' or 'merge'.  In the future, if the merge backend gains
	all remaining capabilities of the apply backend, this setting
	may become unused.

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.updateRefs::
	If set to true enable `--update-refs` option by default.

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.

rebase.rescheduleFailedExec::
	Automatically reschedule `exec` commands that failed. This only makes
	sense in interactive mode (or when an `--exec` option was provided).
	This is the same as specifying the `--reschedule-failed-exec` option.

rebase.forkPoint::
	If set to false set `--no-fork-point` option by default.

rebase.rebaseMerges::
	Whether and how to set the `--rebase-merges` option by default. Can
	be `rebase-cousins`, `no-rebase-cousins`, or a boolean. Setting to
	true or to `no-rebase-cousins` is equivalent to
	`--rebase-merges=no-rebase-cousins`, setting to `rebase-cousins` is
	equivalent to `--rebase-merges=rebase-cousins`, and setting to false is
	equivalent to `--no-rebase-merges`. Passing `--rebase-merges` on the
	command line, with or without an argument, overrides any
	`rebase.rebaseMerges` configuration.

rebase.maxLabelLength::
	When generating label names from commit subjects, truncate the names to
	this length. By default, the names are truncated to a little less than
	`NAME_MAX` (to allow e.g. `.lock` files to be written for the
	corresponding loose refs).