[PATCH] git-svn: add -l/--local command to "git svn rebase"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This avoids fetching new revisions remotely, and is usefuly
versus plain "git rebase" because the user does not have to
specify which remote head to rebase against.

Signed-off-by: Eric Wong <normalperson@xxxxxxxx>
---
 Documentation/git-svn.txt |    8 ++++++++
 git-svn.perl              |    7 +++++--
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt
index 9b5a3d6..a0d34e0 100644
--- a/Documentation/git-svn.txt
+++ b/Documentation/git-svn.txt
@@ -104,6 +104,14 @@ accepts.  However '--fetch-all' only fetches from the current
 
 Like 'git-rebase'; this requires that the working tree be clean
 and have no uncommitted changes.
++
+--
+-l;;
+--local;;
+	Do not fetch remotely; only run 'git-rebase' against the
+	last fetched commit from the upstream SVN.
+--
++
 
 'dcommit'::
 	Commit each diff from a specified head directly to the SVN
diff --git a/git-svn.perl b/git-svn.perl
index 326e89f..e845789 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -56,7 +56,7 @@ my ($_stdin, $_help, $_edit,
 	$_message, $_file,
 	$_template, $_shared,
 	$_version, $_fetch_all,
-	$_merge, $_strategy, $_dry_run,
+	$_merge, $_strategy, $_dry_run, $_local,
 	$_prefix, $_no_checkout, $_verbose);
 $Git::SVN::_follow_parent = 1;
 my %remote_opts = ( 'username=s' => \$Git::SVN::Prompt::_username,
@@ -145,6 +145,7 @@ my %cmd = (
 			{ 'merge|m|M' => \$_merge,
 			  'verbose|v' => \$_verbose,
 			  'strategy|s=s' => \$_strategy,
+			  'local|l' => \$_local,
 			  'fetch-all|all' => \$_fetch_all,
 			  %fc_opts } ],
 	'commit-diff' => [ \&cmd_commit_diff,
@@ -439,7 +440,9 @@ sub cmd_rebase {
 		command_noisy('status');
 		exit 1;
 	}
-	$_fetch_all ? $gs->fetch_all : $gs->fetch;
+	unless ($_local) {
+		$_fetch_all ? $gs->fetch_all : $gs->fetch;
+	}
 	command_noisy(rebase_cmd(), $gs->refname);
 }
 
-- 
1.5.0.3.316.gbd1fc

-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]