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!
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