Bug 22375 - cvs up -j is broken
Summary: cvs up -j is broken
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: cvs
Version: 6.2
Hardware: i686
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Martin Stransky
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2000-12-15 23:41 UTC by Vilius Puidokas
Modified: 2007-04-18 16:30 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2005-03-11 16:49:27 UTC
Embargoed:


Attachments (Terms of Use)

Description Vilius Puidokas 2000-12-15 23:41:00 UTC
behaviour in cvs-1.10.7-7 has changed since cvs-1.10.2-1:
if one 'cvs add's a file in a branch (TAG) and then does cvs up -j, a new
file is being created with status 'locally added', while trying to commit
it cvs craps with 'Input/output error' and later complains about RCS file
existing so refuses futher commits.

here's what i did to recreate it:
[knopka@ithica ~]$ cvs co foo
cvs checkout: Updating foo
[knopka@ithica ~]$ echo "its friday :)" > foo/first
[knopka@ithica ~]$ cvs add foo/first
cvs add: scheduling file `foo/first' for addition
cvs add: use 'cvs commit' to add this file permanently
[knopka@ithica ~]$ cvs commit -m main-trunc foo/first
RCS file: /home/andros/cvs/foo/first,v
done
Checking in foo/first;
/home/andros/cvs/foo/first,v  <--  first
initial revision: 1.1
done
[knopka@ithica ~]$ echo "will be tagged" > foo/second
[knopka@ithica ~]$ cvs add foo/second
cvs add: scheduling file `foo/second' for addition
cvs add: use 'cvs commit' to add this file permanently
[knopka@ithica ~]$ cvs commit -m still-in-main-trunc foo/second
RCS file: /home/andros/cvs/foo/second,v
done
Checking in foo/second;
/home/andros/cvs/foo/second,v  <--  second
initial revision: 1.1
done
[knopka@ithica ~]$ cvs tag -b taggy foo/second
T foo/second
[knopka@ithica ~]$ cvs co -r taggy -d bar foo
cvs checkout: Updating bar
U bar/second
[knopka@ithica ~]$ echo "our file being added in branch" > bar/third
cvs add: scheduling file `bar/third' for addition on branch `taggy'
cvs add: use 'cvs commit' to add this file permanently
[knopka@ithica ~]$ cvs commit -m 'adding in branch' bar/third
RCS file: /home/andros/cvs/foo/Attic/third,v
done
Checking in bar/third;
/home/andros/cvs/foo/Attic/third,v  <--  third
new revision: 1.1.2.1; previous revision: 1.1
done
[knopka@ithica ~]$ cvs up -j taggy foo/
cvs update: Updating foo/
U foo//third
[knopka@ithica ~]$ cvs status foo/third
===================================================================
File: third             Status: Locally Added
 
   Working revision:    New file!
   Repository revision: 1.1     /home/andros/cvs/foo/Attic/third,v
   Sticky Tag:          (none)
   Sticky Date:         (none)
   Sticky Options:      (none)
 
   Existing Tags:
        taggy                           (branch: 1.1.2) 
 
[knopka@ithica ~]$ cvs commit -m 'adding you in main trunc' foo/third
Checking in foo/third;
/home/andros/cvs/foo/third,v  <--  third
cvs [commit aborted]: cannot fstat /home/andros/cvs/foo/third,v:
Input/output error
[knopka@ithica ~]$ cvs status foo/third
===================================================================
File: third             Status: Locally Added
 
   Working revision:    New file!
   Repository revision: 1.1     /home/andros/cvs/foo/third,v
   Sticky Tag:          (none)
   Sticky Date:         (none)
   Sticky Options:      (none)
 
   Existing Tags:
        taggy                           (branch: 1.1.2)
 
[knopka@ithica ~]$ rpm -q cvs
cvs-1.10.7-7
[knopka@ithica ~]$ cvs commit -m 'once MORE' foo/third
cvs commit: cannot add file `foo/third' when RCS file
`/home/andros/cvs/foo/third,v' already exists
cvs [commit aborted]: correct above errors first!

Comment 1 Vilius Puidokas 2004-08-03 19:42:17 UTC
seems to have been fixed in cvs-1.11.1p1-3

[knopka@adm251 tmp]$ rpm -q cvs
cvs-1.11.1p1-3
[knopka@adm251 tmp]$ cvs status foo/third
===================================================================
File: third             Status: Locally Added

   Working revision:    New file!
   Repository revision: 1.1     /net/cvsroot/foo/Attic/third,v
   Sticky Tag:          (none)
   Sticky Date:         (none)
   Sticky Options:      (none)

   Existing Tags:
        taggy                           (branch: 1.1.2)

[knopka@adm251 tmp]$ cvs commit -m 'once MORE' foo/third
Checking in foo/third;
/net/cvsroot/foo/third,v  <--  third
new revision: 1.2; previous revision: 1.1
done


Note You need to log in before you can comment on or make changes to this bug.