[PATCH] cvsimport: introduce -P <cvsps-output-file> option
From: Martin Langhoff <hidden>
Date: 2016-06-15 22:42:10
Subsystem:
documentation, the rest · Maintainers:
Jonathan Corbet, Linus Torvalds
-P:: <cvsps-output-file>
Instead of calling cvsps, read the provided cvsps output file. Useful
for debugging or when cvsps is being handled outside cvsimport.
Signed-off-by: Martin Langhoff <redacted>
---
Documentation/git-cvsimport.txt | 4 ++++
git-cvsimport.perl | 12 ++++++++----
2 files changed, 12 insertions(+), 4 deletions(-)
applies-to: a0f3f0cdfb22033b0dd52a0abc7c5cebfc17e56d
16f5165e7258fcd0dc209f7eb4e85d4222ecaaa4diff --git a/Documentation/git-cvsimport.txt b/Documentation/git-cvsimport.txt
index f5248c9..a2f97b3 100644
--- a/Documentation/git-cvsimport.txt
+++ b/Documentation/git-cvsimport.txt@@ -60,6 +60,10 @@ the old cvs2git tool. + If you need to pass multiple options, separate them with a comma. +-P:: <cvsps-output-file> + Instead of calling cvsps, read the provided cvsps output file. Useful + for debugging or when cvsps is being handled outside cvsimport. + -m:: Attempt to detect merges based on the commit message. This option will enable default regexes that try to capture the name source
diff --git a/git-cvsimport.perl b/git-cvsimport.perl
index e3cad5a..0144670 100755
--- a/git-cvsimport.perl
+++ b/git-cvsimport.perl@@ -29,7 +29,7 @@ use IPC::Open2; $SIG{'PIPE'}="IGNORE"; $ENV{'TZ'}="UTC"; -our($opt_h,$opt_o,$opt_v,$opt_k,$opt_u,$opt_d,$opt_p,$opt_C,$opt_z,$opt_i,$opt_s,$opt_m,$opt_M); +our($opt_h,$opt_o,$opt_v,$opt_k,$opt_u,$opt_d,$opt_p,$opt_C,$opt_z,$opt_i,$opt_P, $opt_s,$opt_m,$opt_M); sub usage() { print STDERR <<END;
@@ -41,7 +41,7 @@ END exit(1); } -getopts("hivmkuo:d:p:C:z:s:M:") or usage(); +getopts("hivmkuo:d:p:C:z:s:M:P:") or usage(); usage if $opt_h; @ARGV <= 1 or usage();
@@ -494,8 +494,12 @@ unless($pid) { unless (defined($opt_p) && $opt_p =~ m/--no-cvs-direct/) { push @opt, '--cvs-direct'; } - exec("cvsps",@opt,"-u","-A",'--root',$opt_d,$cvs_tree); - die "Could not start cvsps: $!\n"; + if ($opt_P) { + exec("cat", $opt_P); + } else { + exec("cvsps",@opt,"-u","-A",'--root',$opt_d,$cvs_tree); + die "Could not start cvsps: $!\n"; + } }
--- 0.99.8.GIT