Currently, the get_replay_opts() function does not initialise the `squash_onto' field (which is used for the `--root' mode), only read_populate_opts() does. That would lead to incorrect results when calling pick_commits() without reading the options from the disk first. Let’s change that. Signed-off-by: Alban Gruin <alban.gruin@xxxxxxxxx> --- Reworded commit. builtin/rebase.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/builtin/rebase.c b/builtin/rebase.c index e8319d5946..2097d41edc 100644 --- a/builtin/rebase.c +++ b/builtin/rebase.c @@ -117,6 +117,11 @@ static struct replay_opts get_replay_opts(const struct rebase_options *opts) if (opts->strategy_opts) parse_strategy_opts(&replay, opts->strategy_opts); + if (opts->squash_onto) { + oidcpy(&replay.squash_onto, opts->squash_onto); + replay.have_squash_onto = 1; + } + return replay; } -- 2.23.0