[cvsnt] CVS Rename and Tag problem
WilliamsTim at PRAIntl.com
Mon Jan 7 19:30:12 GMT 2008
Hello good CVSNT folks,
This question is in follow up to a post on the TCVS mail list "Disable
Rename in TCVS menus?" where I reported a problem I am having with file
renaming and tags. Arthur Barrett asked that I post my follow up
TCVS 1.10.1 RC10 and CVSNT server 2.5.03 Build 2382.
CVS Server: Windows 2003 Server SP1 Standard Edition
Sandbox: Windows 2003 Server x64 Enterprise Edition
A tag "DataShipment1" is applied to two test files in a folder. Each
file is at revision 1.2. Revisions 1.3 are committed for each file.
One file is renamed from Original2.sas to New2.sas and the changes
committed to the repository. The project is later checked out using
the tag name "DataShipment1." The file in the sandbox is named New2.sas,
not Original2.sas as it was when the file was tagged.
This is not entirely surprising to me because in its current form, the
rename command does not rename the file in the CVS repository. However,
not having the file named as it was when the tag was applied will break
Arthur asked that I detail the steps I took in TCVS along with the CVS
commands. This is provided below. I also provide the output from the
command cvs rlog .
Checkout logs for the Head and DataShipment1 tag will be forwarded
directly to March-hare as requested.
Let me know what else I can do to assist.
SAS Sys Admin
Here are the steps I took in recreating the problem. CVS commands shown
in the TCVS window are included where applicable.
1. Created revision 1.2 of two files: Original1.sas and
Original2.sas in a folder named Test2
2. Tagged the "Test2" folder with the tag "DataShipment1"
cvs -1 tag -c DataShipment1
3. Edited both files and committed revision 1.3 of each
Original1.sas and Original2.sas
4. Renamed Original2.SAS: Chose CVS | Rename in the TCVS
menu for file Original2.sas. Renamed it as New2.sas.
cvs -q rename Original2.sas New2.sas
5. Committed the Test2 parent folder
cvs -q commit -m "commit of renamed
The resulting TCVS window contained the following information:
"C:\Program Files (x86)\CVSNT\CVSNT Tools\cvs.exe" -q commit -m "commit
of renamed file"
<-- directory update cvs server: could not get info for
`SDLC/CVSSDLC/SAS/Define/test2/D:\CVSTemp\cvsA1.tmp': Operation not
new revision: 1.2; previous revision: 1.1
Success, CVS operation completed
(x86)\CVSNT\CVSNT Tools\cvs.exe" -q stat
Success, CVS operation completed
6. Now there are two files in the sandbox folder:
Original1.sas and New2.sas
7. Right click on the Test2 parent folder and choose CVS |
8. Specify tag name : DataShipment1
cvs.exe" -q update -r DataShipment1 -d
9. The files now in the folder Test2 are: Original1.sas
and New2.sas (not Original2.sas as expected!). Both Original1.sas and
New2.sas are at revision 1.2 (as expected)
Output from the command: cvs rlog CVSSDLC/Define/Test2/Original2.sas
keyword substitution: kv
total revisions: 3; selected revisions: 3
date: 2008/01/07 15:59:15; author: WilliamsTim; state: Exp; lines: +3
-2; kopt: kv; commitid: 4f847824c522adb; filename: Original2.sas;
revision 1.3 prior to rename
date: 2008/01/07 15:56:35; author: WilliamsTim; state: Exp; lines: +3
-3; kopt: kv; commitid: 86047824bb128cd; filename: Original2.sas;
prep for revision 1.2 that will be tagged.
date: 2008/01/07 15:55:52; author: WilliamsTim; state: Exp; kopt: kv;
commitid: 4f847824b872844; filename: Original2.sas;
revision 1.1 - header only
More information about the cvsnt