]> git.ipfire.org Git - thirdparty/git.git/commitdiff
Merge branch 'en/rebase-merge-on-sequencer'
authorJunio C Hamano <gitster@pobox.com>
Thu, 7 Feb 2019 06:05:20 +0000 (22:05 -0800)
committerJunio C Hamano <gitster@pobox.com>
Thu, 7 Feb 2019 06:05:20 +0000 (22:05 -0800)
"git rebase --merge" as been reimplemented by reusing the internal
machinery used for "git rebase -i".

* en/rebase-merge-on-sequencer:
  rebase: implement --merge via the interactive machinery
  rebase: define linearization ordering and enforce it
  git-legacy-rebase: simplify unnecessary triply-nested if
  git-rebase, sequencer: extend --quiet option for the interactive machinery
  am, rebase--merge: do not overlook --skip'ed commits with post-rewrite
  t5407: add a test demonstrating how interactive handles --skip differently
  rebase: fix incompatible options error message
  rebase: make builtin and legacy script error messages the same

1  2 
.gitignore
Documentation/git-rebase.txt
Makefile
builtin/am.c
builtin/rebase.c
git-legacy-rebase.sh
git-rebase--common.sh
sequencer.c
sequencer.h

diff --cc .gitignore
Simple merge
Simple merge
diff --cc Makefile
Simple merge
diff --cc builtin/am.c
Simple merge
index fdeb41e899382f3a4d7202e68768d0c1c8f755fb,d95843a8d4b5f6c8ad6e8784d91c8ba08f1d8adf..3f9b26f7295e4b66f8a59d72ed2d00ea7900f980
@@@ -1290,20 -1238,15 +1280,20 @@@ int cmd_rebase(int argc, const char **a
                 *       git-rebase.txt caveats with "unless you know what you are doing"
                 */
                if (options.rebase_merges)
-                       die(_("error: cannot combine '--preserve-merges' with "
+                       die(_("cannot combine '--preserve-merges' with "
                              "'--rebase-merges'"));
  
 +              if (options.reschedule_failed_exec)
 +                      die(_("error: cannot combine '--preserve-merges' with "
 +                            "'--reschedule-failed-exec'"));
 +      }
 +
        if (options.rebase_merges) {
                if (strategy_options.nr)
-                       die(_("error: cannot combine '--rebase-merges' with "
+                       die(_("cannot combine '--rebase-merges' with "
                              "'--strategy-option'"));
                if (options.strategy)
-                       die(_("error: cannot combine '--rebase-merges' with "
+                       die(_("cannot combine '--rebase-merges' with "
                              "'--strategy'"));
        }
  
index f03ca6c49a69f561478085b5c0e83e618c077921,0c9c19bc60a06ce72f356a7dd6eb9c713998f747..8d6c9aca6584f76689246604abe047a85504671e
@@@ -552,10 -525,7 +544,10 @@@ the
        # Note: incompatibility with --interactive is just a strong warning;
        #       git-rebase.txt caveats with "unless you know what you are doing"
        test -n "$rebase_merges" &&
-               die "$(gettext "error: cannot combine '--preserve-merges' with '--rebase-merges'")"
+               die "$(gettext "fatal: cannot combine '--preserve-merges' with '--rebase-merges'")"
 +
 +      test -n "$reschedule_failed_exec" &&
 +              die "$(gettext "error: cannot combine '--preserve-merges' with '--reschedule-failed-exec'")"
  fi
  
  if test -n "$rebase_merges"
Simple merge
diff --cc sequencer.c
index 213815dbfc116bc7d9a11b1c7acc429fb078f732,bc25615050777838f060654113df82b2816a3ca4..a6333abd3990825ed0573c408837dbf164f31f4f
@@@ -157,8 -158,6 +158,7 @@@ static GIT_PATH_FUNC(rebase_path_autost
  static GIT_PATH_FUNC(rebase_path_strategy, "rebase-merge/strategy")
  static GIT_PATH_FUNC(rebase_path_strategy_opts, "rebase-merge/strategy_opts")
  static GIT_PATH_FUNC(rebase_path_allow_rerere_autoupdate, "rebase-merge/allow_rerere_autoupdate")
- static GIT_PATH_FUNC(rebase_path_quiet, "rebase-merge/quiet")
 +static GIT_PATH_FUNC(rebase_path_reschedule_failed_exec, "rebase-merge/reschedule-failed-exec")
  
  static int git_sequencer_config(const char *k, const char *v, void *cb)
  {
diff --cc sequencer.h
index 5d7bc04751ad853326e1563fc6176f101d485139,729222b583fb6534a002e417a1ba33e578dc0c24..53b86797188e8bef7371cd922bfafdc2464c1281
@@@ -40,7 -39,7 +40,8 @@@ struct replay_opts 
        int allow_empty_message;
        int keep_redundant_commits;
        int verbose;
+       int quiet;
 +      int reschedule_failed_exec;
  
        int mainline;