diff mbox series

[1/1] git svn: stop using `rebase --preserve-merges`

Message ID c123d93ae7361b53b9d1d76124aefcb09740f0eb.1574463569.git.gitgitgadget@gmail.com (mailing list archive)
State New, archived
Headers show
Series git svn: use rebase --rebase-merges instead of preserve-merges | expand

Commit Message

Linus Arver via GitGitGadget Nov. 22, 2019, 10:59 p.m. UTC
From: Johannes Schindelin <johannes.schindelin@gmx.de>

We deprecated `--preserve-merges` in favor of `--rebase-merges`; Let's
reflect that in `git svn`.

Note: Even when the user asks for `--preserve-merges`, we now silently
pass `--rebase-merges` to `git rebase` instead. Technically, this is a
change of behavior. But practically, `git svn` only ever asks for a
non-interactive rebase, and `--preserve-merges` and `--rebase-merges`
are on par with regard to that.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---
 Documentation/git-svn.txt | 3 ++-
 git-svn.perl              | 9 +++++----
 2 files changed, 7 insertions(+), 5 deletions(-)

Comments

Eric Wong Nov. 23, 2019, 12:08 a.m. UTC | #1
Johannes Schindelin via GitGitGadget <gitgitgadget@gmail.com> wrote:
> From: Johannes Schindelin <johannes.schindelin@gmx.de>
> 
> We deprecated `--preserve-merges` in favor of `--rebase-merges`; Let's
> reflect that in `git svn`.
> 
> Note: Even when the user asks for `--preserve-merges`, we now silently
> pass `--rebase-merges` to `git rebase` instead. Technically, this is a
> change of behavior. But practically, `git svn` only ever asks for a
> non-interactive rebase, and `--preserve-merges` and `--rebase-merges`
> are on par with regard to that.

I've never used --preserve-merges or --rebase-merges even with
standalone git; but this seems fine as there's no actual
behavior change...

> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>

Acked-by: Eric Wong <e@80x24.org>

Thanks.
diff mbox series

Patch

diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt
index 53774f5b64..6624a14fbd 100644
--- a/Documentation/git-svn.txt
+++ b/Documentation/git-svn.txt
@@ -677,7 +677,8 @@  config key: svn.authorsProg
 -s<strategy>::
 --strategy=<strategy>::
 -p::
---preserve-merges::
+--rebase-merges::
+--preserve-merges (DEPRECATED)::
 	These are only used with the 'dcommit' and 'rebase' commands.
 +
 Passed directly to 'git rebase' when using 'dcommit' if a
diff --git a/git-svn.perl b/git-svn.perl
index 050f2a36f4..4aa208ff5f 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -110,7 +110,7 @@  sub _req_svn {
 	$_template, $_shared,
 	$_version, $_fetch_all, $_no_rebase, $_fetch_parent,
 	$_before, $_after,
-	$_merge, $_strategy, $_preserve_merges, $_dry_run, $_parents, $_local,
+	$_merge, $_strategy, $_rebase_merges, $_dry_run, $_parents, $_local,
 	$_prefix, $_no_checkout, $_url, $_verbose,
 	$_commit_url, $_tag, $_merge_info, $_interactive, $_set_svn_props);
 
@@ -270,7 +270,8 @@  sub _req_svn {
 			  'local|l' => \$_local,
 			  'fetch-all|all' => \$_fetch_all,
 			  'dry-run|n' => \$_dry_run,
-			  'preserve-merges|p' => \$_preserve_merges,
+			  'rebase-merges|p' => \$_rebase_merges,
+			  'preserve-merges|p' => \$_rebase_merges,
 			  %fc_opts } ],
 	'commit-diff' => [ \&cmd_commit_diff,
 	                   'Commit a diff between two trees',
@@ -1054,7 +1055,7 @@  sub cmd_dcommit {
 					  'If you are attempting to commit ',
 					  "merges, try running:\n\t",
 					  'git rebase --interactive',
-					  '--preserve-merges ',
+					  '--rebase-merges ',
 					  $gs->refname,
 					  "\nBefore dcommitting";
 				}
@@ -1717,7 +1718,7 @@  sub rebase_cmd {
 	push @cmd, '-v' if $_verbose;
 	push @cmd, qw/--merge/ if $_merge;
 	push @cmd, "--strategy=$_strategy" if $_strategy;
-	push @cmd, "--preserve-merges" if $_preserve_merges;
+	push @cmd, "--rebase-merges" if $_rebase_merges;
 	@cmd;
 }