Skip to content

Commit

Permalink
cvsimport: skip commits that are too recent (option and documentation)
Browse files Browse the repository at this point in the history
This makes the earlier "wait for 10 minutes before importing" safety
overridable with "-a(ll)" flag, and adds necessary documentation.

Signed-off-by: Martin Langhoff <martin@catalyst.net.nz>
Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Martin Langhoff authored and Junio C Hamano committed Jan 8, 2007
1 parent 9a5e407 commit ded9f40
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 4 deletions.
7 changes: 6 additions & 1 deletion Documentation/git-cvsimport.txt
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,8 @@ If you need to pass multiple options, separate them with a comma.
Print a short usage message and exit.

-z <fuzz>::
Pass the timestamp fuzz factor to cvsps.
Pass the timestamp fuzz factor to cvsps, in seconds. If unset,
cvsps defaults to 300s.

-s <subst>::
Substitute the character "/" in branch names with <subst>
Expand All @@ -99,6 +100,10 @@ If you need to pass multiple options, separate them with a comma.
CVS by default uses the unix username when writing its
commit logs. Using this option and an author-conv-file
in this format

-a::
Import all commits, including recent ones. cvsimport by default
skips commits that have a timestamp less than 10 minutes ago.
+
---------
exon=Andreas Ericsson <ae@op5.se>
Expand Down
8 changes: 5 additions & 3 deletions git-cvsimport.perl
Original file line number Diff line number Diff line change
Expand Up @@ -29,15 +29,15 @@
$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_P, $opt_s,$opt_m,$opt_M,$opt_A,$opt_S,$opt_L);
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,$opt_A,$opt_S,$opt_L, $opt_a);
my (%conv_author_name, %conv_author_email);

sub usage() {
print STDERR <<END;
Usage: ${\basename $0} # fetch/update GIT from CVS
[-o branch-for-HEAD] [-h] [-v] [-d CVSROOT] [-A author-conv-file]
[-p opts-for-cvsps] [-C GIT_repository] [-z fuzz] [-i] [-k] [-u]
[-s subst] [-m] [-M regex] [-S regex] [CVS_module]
[-s subst] [-a] [-m] [-M regex] [-S regex] [CVS_module]
END
exit(1);
}
Expand Down Expand Up @@ -105,6 +105,8 @@ ($)
}
$opt_o ||= "origin";
$opt_s ||= "-";
$opt_a ||= 0;

my $git_tree = $opt_C;
$git_tree ||= ".";

Expand Down Expand Up @@ -829,7 +831,7 @@ sub commit {
$state = 11;
next;
}
if ( $starttime - 300 - (defined $opt_z ? $opt_z : 300) <= $date) {
if (!$opt_a && $starttime - 300 - (defined $opt_z ? $opt_z : 300) <= $date) {
# skip if the commit is too recent
# that the cvsps default fuzz is 300s, we give ourselves another
# 300s just in case -- this also prevents skipping commits
Expand Down

0 comments on commit ded9f40

Please sign in to comment.