diff options
author | Yann Dirson <ydirson@altern.org> | 2006-01-06 21:54:41 +0100 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-01-06 14:27:47 -0800 |
commit | 576cfc86fc321688aec0bc7359fb1097e5717631 (patch) | |
tree | 2ba910a4f0cd2284b6888a644feefd0d25e033fd | |
parent | c1fe2fe4fe685e0587c3949f953aab726de88994 (diff) | |
download | git-576cfc86fc321688aec0bc7359fb1097e5717631.tar.gz git-576cfc86fc321688aec0bc7359fb1097e5717631.tar.xz |
Teach cvsexportcommit to add new files
"cvs add" support was already there, but the "unknown" status
returned when querying a file not yet known to cvs caused the
script to abort prematurely.
Signed-off-by: Junio C Hamano <junkio@cox.net>
-rwxr-xr-x | git-cvsexportcommit.perl | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/git-cvsexportcommit.perl b/git-cvsexportcommit.perl index 5a8c01180..d5fbee7ba 100755 --- a/git-cvsexportcommit.perl +++ b/git-cvsexportcommit.perl @@ -103,8 +103,16 @@ undef @files; # don't need it anymore # check that the files are clean and up to date according to cvs my $dirty; -foreach my $f (@afiles, @mfiles, @dfiles) { - # TODO:we need to handle removed in cvs and/or new (from git) +foreach my $f (@afiles) { + my $status = `cvs -q status "$f" | grep '^File: '`; + + unless ($status =~ m/Status: Unknown$/) { + $dirty = 1; + warn "File $f is already known in your CVS checkout!\n"; + } +} +foreach my $f (@mfiles, @dfiles) { + # TODO:we need to handle removed in cvs my $status = `cvs -q status "$f" | grep '^File: '`; unless ($status =~ m/Status: Up-to-date$/) { |