From fbfd60d65142848299513dfa6b477d0f5299cc15 Mon Sep 17 00:00:00 2001 From: Johannes Schindelin Date: Wed, 17 Aug 2005 11:19:20 +0200 Subject: [PATCH] [PATCH] Also handle CVS branches with a '/' in their name I track a CVS project which has a branch with a '/' in the branch name. Since git wants the branch name to be a file name at the same time, substitute that character to a '-' by default (override with "-s "). This should work well, despite the fact that a division and a difference are completely different :-) Signed-off-by: Johannes Schindelin Signed-off-by: Junio C Hamano --- Documentation/git-cvsimport-script.txt | 6 +++++- git-cvsimport-script | 8 +++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/Documentation/git-cvsimport-script.txt b/Documentation/git-cvsimport-script.txt index 61713d859..ae46b2f07 100644 --- a/Documentation/git-cvsimport-script.txt +++ b/Documentation/git-cvsimport-script.txt @@ -11,7 +11,8 @@ SYNOPSIS -------- 'git-cvsimport-script' [ -o ] [ -h ] [ -v ] [ -d ] [ -p ] - [ -C ] [ -i ] [ -k ] [ ] + [ -C ] [ -i ] [ -k ] + [ -s ] [ ] DESCRIPTION @@ -69,6 +70,9 @@ OPTIONS -z :: Pass the timestamp fuzz factor to cvsps. +-s :: + Substitute the character "/" in branch names with + OUTPUT ------ If '-v' is specified, the script reports what it is doing. diff --git a/git-cvsimport-script b/git-cvsimport-script index a6a6f0db3..2f39af33d 100755 --- a/git-cvsimport-script +++ b/git-cvsimport-script @@ -28,19 +28,19 @@ use POSIX qw(strftime dup2); $SIG{'PIPE'}="IGNORE"; $ENV{'TZ'}="UTC"; -our($opt_h,$opt_o,$opt_v,$opt_k,$opt_d,$opt_p,$opt_C,$opt_z,$opt_i); +our($opt_h,$opt_o,$opt_v,$opt_k,$opt_d,$opt_p,$opt_C,$opt_z,$opt_i,$opt_s); sub usage() { print STDERR <) { $state = 4; } elsif($state == 4 and s/^Branch:\s+//) { s/\s+$//; + s/[\/]/$opt_s/g; $branch = $_; $state = 5; } elsif($state == 5 and s/^Ancestor branch:\s+//) { -- 2.30.2