git-svn: allow metadata options to be specified with 'init' and 'clone'
Since the options that affect the way metadata is handled in git-svn, should be consistently set/unset throughout history imported by git-svn; it makes sense to allow the user to set certain options from the command-line that will write to the config file when initially creating the repository. Also, fix some formatting issues while we're updating documentation. Signed-off-by: Eric Wong <normalperson@yhbt.net>
This commit is contained in:
13
git-svn.perl
13
git-svn.perl
@ -75,9 +75,14 @@ my %fc_opts = ( 'follow-parent|follow!' => \$Git::SVN::_follow_parent,
|
||||
%remote_opts );
|
||||
|
||||
my ($_trunk, $_tags, $_branches);
|
||||
my %icv;
|
||||
my %init_opts = ( 'template=s' => \$_template, 'shared:s' => \$_shared,
|
||||
'trunk|T=s' => \$_trunk, 'tags|t=s' => \$_tags,
|
||||
'branches|b=s' => \$_branches, 'prefix=s' => \$_prefix,
|
||||
'no-metadata' => sub { $icv{noMetadata} = 1 },
|
||||
'use-svm-props' => sub { $icv{useSvmProps} = 1 },
|
||||
'use-svnsync-props' => sub { $icv{useSvnsyncProps} = 1 },
|
||||
'rewrite-root=s' => sub { $icv{rewriteRoot} = $_[1] },
|
||||
%remote_opts );
|
||||
my %cmt_opts = ( 'edit|e' => \$_edit,
|
||||
'rmdir' => \$SVN::Git::Editor::_rmdir,
|
||||
@ -234,6 +239,14 @@ sub do_git_init_db {
|
||||
}
|
||||
command_noisy(@init_db);
|
||||
}
|
||||
my $set;
|
||||
my $pfx = "svn-remote.$Git::SVN::default_repo_id";
|
||||
foreach my $i (keys %icv) {
|
||||
die "'$set' and '$i' cannot both be set\n" if $set;
|
||||
next unless defined $icv{$i};
|
||||
command_noisy('config', "$pfx.$i", $icv{$i});
|
||||
$set = $i;
|
||||
}
|
||||
}
|
||||
|
||||
sub init_subdir {
|
||||
|
||||
Reference in New Issue
Block a user