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

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@yhbt.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Eric Wong 2007-03-13 11:40:36 -07:00 коммит произвёл Junio C Hamano
Родитель 27ebd6e044
Коммит dee41f3e55
2 изменённых файлов: 13 добавлений и 2 удалений

Просмотреть файл

@ -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

Просмотреть файл

@ -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);
}