[cvsnt] rename breakage

Bryce Schober bryce.schober at dynonavionics.com
Wed Jul 18 19:19:20 BST 2007


On 7/11/07, Arthur Barrett <arthur.barrett at march-hare.com> wrote:
>
> Bryce,
>
> > The only error appears to be that cvs update -r branch does not handle
> > renames.  I'm not sure it is worth fixing that...  The workaround is
> > easy enough (use a separate sandbox).
> >
>
> Actually - I think you may have committed at the wrong level:
>
> C:\cvs\test\sub5>cvs rename file3.txt file3_renamed.txt
> cvs rename: Warning: rename is still experimental and may not behave as
> you would expect
>
> C:\cvs\test\sub5>notepad file3_renamed.txt
>
> C:\cvs\test\sub5>cvs commit -m "modified and renamed file3.txt to
> file3_renamed.txt"
>
>
> This should have been:
>
> C:\cvs\test\sub5>cd ..
>
> C:\cvs\test>cvs commit -m "modified and renamed file3.txt to
> file3_renamed.txt" sub5
>
> Can you please try that and confirm the expected results are achieve
> with cvs up -r branch1 then?
>
>
This log shows the same breakage even committing on the directory as you
specified. An update still doesn't get the correct filename, and yes, it
matters! In fact it alarms me that you could think it doesn't! Note the log
corruption on the branch on a subsequent branch commit.

C:\cvs\test\rename>cvs version
Client: Concurrent Versions System (CVSNT) 2.5.03 (Scorpio) Build 2382
(client/server)
Server: Concurrent Versions System (CVSNT) 2.5.03 (Scorpio) Build 2382
(client/server)

C:\cvs\test\rename>mkdir sub1

C:\cvs\test\rename>cvs add sub1
Directory /dynon/test/rename/sub1 added to the repository

C:\cvs\test\rename>cd sub1

C:\cvs\test\rename\sub1>echo "a test file" >> file.txt

C:\cvs\test\rename\sub1>cvs add file.txt
cvs server: scheduling file `file.txt' for addition
cvs server: use 'cvs commit' to add this file permanently

C:\cvs\test\rename\sub1>cvs commit -m "added file" file.txt
RCS file: /dynon/test/rename/sub1/file.txt,v
done
Checking in file.txt;
/dynon/test/rename/sub1/file.txt,v  <--  file.txt
initial revision: 1.1
done

C:\cvs\test\rename\sub1>notepad file.txt

C:\cvs\test\rename\sub1>cvs commit -m "modified file" file.txt
Checking in file.txt;
/dynon/test/rename/sub1/file.txt,v  <--  file.txt
new revision: 1.2; previous revision: 1.1
done

C:\cvs\test\rename\sub1>cvs tag -b branch1 file.txt
T file.txt

C:\cvs\test\rename\sub1>notepad file.txt

C:\cvs\test\rename\sub1>cvs commit -m "modified file on trunk" file.txt
Checking in file.txt;
/dynon/test/rename/sub1/file.txt,v  <--  file.txt
new revision: 1.3; previous revision: 1.2
done

C:\cvs\test\rename\sub1>cvs rename file.txt file_renamed.txt
cvs rename: Warning: rename is still experimental and may not behave as you
would expect

C:\cvs\test\rename\sub1>cd ..

C:\cvs\test\rename>cvs commit -m "renamed file on trunk" sub1
cvs commit: Examining sub1

C:\cvs\test\rename>cd sub1

C:\cvs\test\rename\sub1>cvs log file.txt
cvs server: nothing known about file.txt

C:\cvs\test\rename\sub1>cvs log file_renamed.txt

RCS file: /dynon/test/rename/sub1/file_renamed.txt,v
Working file: file_renamed.txt
head: 1.3
branch:
locks: strict
access list:
symbolic names:
        branch1: 1.2.0.2
keyword substitution: kv
total revisions: 3;     selected revisions: 3
description:
----------------------------
revision 1.3
date: 2007/07/18 17:48:04;  author: bks;  state: Exp;  lines: +1 -0;  kopt:
kv;  commitid: 1110469e52543125;  filename: file.txt;
modified file on trunk
----------------------------
revision 1.2
date: 2007/07/18 17:47:04;  author: bks;  state: Exp;  lines: +2 -0;  kopt:
kv;  commitid: 1144469e5217305e;  filename: file.txt;
modified file
----------------------------
revision 1.1
date: 2007/07/18 17:43:33;  author: bks;  state: Exp;  kopt: kv;  commitid:
1160469e51452db0;  filename: file.txt;
added file
=============================================================================

C:\cvs\test\rename\sub1>cvs update -r branch1
cvs server: Updating .
P file_renamed.txt

C:\cvs\test\rename\sub1>ls
CVS  file_renamed.txt

C:\cvs\test\rename\sub1>cd ..

C:\cvs\test\rename>cvs update -r branch1 sub1
cvs server: Updating sub1

C:\cvs\test\rename>ls sub1/*
sub1/file_renamed.txt

sub1/CVS:
Entries  Entries.Extra  Entries.Extra.Old  Entries.Old  Rename  Repository
Root  Tag

C:\cvs\test\rename>cd sub1\CVS

C:\cvs\test\rename\sub1\CVS>cat Rename
test/rename/sub1/file_renamed.txt

test/rename/sub1/file.txt
test/rename/sub1/file_renamed.txt

C:\cvs\test\rename\sub1\CVS>cd ..

C:\cvs\test\rename\sub1>notepad file_renamed.txt

C:\cvs\test\rename\sub1>cvs commit -m "modified on branch" file_renamed.txt
Checking in file_renamed.txt;
/dynon/test/rename/sub1/file.txt,v  <--  file_renamed.txt
new revision: 1.2.2.1; previous revision: 1.2
done

C:\cvs\test\rename\sub1>cvs log file_renamed.txt

RCS file: /dynon/test/rename/sub1/file_renamed.txt,v
Working file: file_renamed.txt
head: 1.3
branch:
locks: strict
access list:
symbolic names:
        branch1: 1.2.0.2
keyword substitution: kv
total revisions: 4;     selected revisions: 4
description:
----------------------------
revision 1.3
date: 2007/07/18 17:48:04;  author: bks;  state: Exp;  lines: +1 -0;  kopt:
kv;  commitid: 1110469e52543125;  filename: file.txt;
modified file on trunk
----------------------------
revision 1.2
date: 2007/07/18 17:47:04;  author: bks;  state: Exp;  lines: +2 -0;  kopt:
kv;  commitid: 1144469e5217305e;  filename: file.txt;
branches:  1.2.2;
modified file
----------------------------
revision 1.1
date: 2007/07/18 17:43:33;  author: bks;  state: Exp;  kopt: kv;  commitid:
1160469e51452db0;  filename: file.txt;
added file
----------------------------
revision 1.2.2.1
date: 2007/07/18 17:52:14;  author: bks;  state: Exp;  lines: +1 -0;  kopt:
kv;  commitid: 115c469e534e3456;  filename: file_renamed.txt;
modified on branch
=============================================================================

C:\cvs\test\rename\sub1>cd ..

C:\cvs\test\rename>cvs co -d sub1-branch1 -r branch1 test/rename/sub1
cvs server: Updating sub1-branch1
U sub1-branch1/file.txt

C:\cvs\test\rename>cd sub1-branch1

C:\cvs\test\rename\sub1-branch1>cvs log file.txt

RCS file: /dynon/test/rename/sub1/file.txt,v
Working file: file.txt
head: 1.3
branch:
locks: strict
access list:
symbolic names:
        branch1: 1.2.0.2
keyword substitution: kv
total revisions: 4;     selected revisions: 4
description:
----------------------------
revision 1.3
date: 2007/07/18 17:48:04;  author: bks;  state: Exp;  lines: +1 -0;  kopt:
kv;  commitid: 1110469e52543125;  filename: file.txt;
modified file on trunk
----------------------------
revision 1.2
date: 2007/07/18 17:47:04;  author: bks;  state: Exp;  lines: +2 -0;  kopt:
kv;  commitid: 1144469e5217305e;  filename: file.txt;
branches:  1.2.2;
modified file
----------------------------
revision 1.1
date: 2007/07/18 17:43:33;  author: bks;  state: Exp;  kopt: kv;  commitid:
1160469e51452db0;  filename: file.txt;
added file
----------------------------
revision 1.2.2.1
date: 2007/07/18 17:52:14;  author: bks;  state: Exp;  lines: +1 -0;  kopt:
kv;  commitid: 115c469e534e3456;  filename: file_renamed.txt;
modified on branch
=============================================================================

C:\cvs\test\rename\sub1-branch1>cd ..

C:\cvs\test\rename>cvs update -A sub1
cvs server: Updating sub1
P sub1/file_renamed.txt

C:\cvs\test\rename>cd sub1

C:\cvs\test\rename\sub1>cvs log file_renamed.txt

RCS file: /dynon/test/rename/sub1/file_renamed.txt,v
Working file: file_renamed.txt
head: 1.3
branch:
locks: strict
access list:
symbolic names:
        branch1: 1.2.0.2
keyword substitution: kv
total revisions: 4;     selected revisions: 4
description:
----------------------------
revision 1.3
date: 2007/07/18 17:48:04;  author: bks;  state: Exp;  lines: +1 -0;  kopt:
kv;  commitid: 1110469e52543125;  filename: file.txt;
modified file on trunk
----------------------------
revision 1.2
date: 2007/07/18 17:47:04;  author: bks;  state: Exp;  lines: +2 -0;  kopt:
kv;  commitid: 1144469e5217305e;  filename: file.txt;
branches:  1.2.2;
modified file
----------------------------
revision 1.1
date: 2007/07/18 17:43:33;  author: bks;  state: Exp;  kopt: kv;  commitid:
1160469e51452db0;  filename: file.txt;
added file
----------------------------
revision 1.2.2.1
date: 2007/07/18 17:52:14;  author: bks;  state: Exp;  lines: +1 -0;  kopt:
kv;  commitid: 115c469e534e3456;  filename: file_renamed.txt;
modified on branch
=============================================================================

C:\cvs\test\rename\sub1>notepad file_renamed.txt

C:\cvs\test\rename\sub1>cvs commit -m "modified on trunk after rename"
file_renamed.txt
Checking in file_renamed.txt;
/dynon/test/rename/sub1/file.txt,v  <--  file_renamed.txt
new revision: 1.4; previous revision: 1.3
done

C:\cvs\test\rename\sub1>cvs log file_renamed.txt

RCS file: /dynon/test/rename/sub1/file_renamed.txt,v
Working file: file_renamed.txt
head: 1.4
branch:
locks: strict
access list:
symbolic names:
        branch1: 1.2.0.2
keyword substitution: kv
total revisions: 5;     selected revisions: 5
description:
----------------------------
revision 1.4
date: 2007/07/18 18:07:02;  author: bks;  state: Exp;  lines: +1 -1;  kopt:
kv;  commitid: c68469e56c53fa6;  filename: file_renamed.txt;
modified on trunk after rename
----------------------------
revision 1.3
date: 2007/07/18 17:48:04;  author: bks;  state: Exp;  lines: +1 -0;  kopt:
kv;  commitid: 1110469e52543125;  filename: file.txt;
modified file on trunk
----------------------------
revision 1.2
date: 2007/07/18 17:47:04;  author: bks;  state: Exp;  lines: +2 -0;  kopt:
kv;  commitid: 1144469e5217305e;  filename: file.txt;
branches:  1.2.2;
modified file
----------------------------
revision 1.1
date: 2007/07/18 17:43:33;  author: bks;  state: Exp;  kopt: kv;  commitid:
1160469e51452db0;  filename: file.txt;
added file
----------------------------
revision 1.2.2.1
date: 2007/07/18 17:52:14;  author: bks;  state: Exp;  lines: +1 -0;  kopt:
kv;  commitid: 115c469e534e3456;  filename: file_renamed.txt;
modified on branch
=============================================================================

C:\cvs\test\rename\sub1>cd ..

C:\cvs\test\rename>cvs update sub1-branch1
cvs server: Updating sub1-branch1

C:\cvs\test\rename>cvs log sub1-branch1\file.txt

RCS file: /dynon/test/rename/sub1/file.txt,v
Working file: sub1-branch1/file.txt
head: 1.4
branch:
locks: strict
access list:
symbolic names:
        branch1: 1.2.0.2
keyword substitution: kv
total revisions: 5;     selected revisions: 5
description:
----------------------------
revision 1.4
date: 2007/07/18 18:07:02;  author: bks;  state: Exp;  lines: +1 -1;  kopt:
kv;  commitid: c68469e56c53fa6;  filename: file_renamed.txt;
modified on trunk after rename
----------------------------
revision 1.3
date: 2007/07/18 17:48:04;  author: bks;  state: Exp;  lines: +1 -0;  kopt:
kv;  commitid: 1110469e52543125;  filename: file.txt;
modified file on trunk
----------------------------
revision 1.2
date: 2007/07/18 17:47:04;  author: bks;  state: Exp;  lines: +2 -0;  kopt:
kv;  commitid: 1144469e5217305e;  filename: file.txt;
branches:  1.2.2;
modified file
----------------------------
revision 1.1
date: 2007/07/18 17:43:33;  author: bks;  state: Exp;  kopt: kv;  commitid:
1160469e51452db0;  filename: file.txt;
added file
----------------------------
revision 1.2.2.1
date: 2007/07/18 17:52:14;  author: bks;  state: Exp;  lines: +1 -0;  kopt:
kv;  commitid: 115c469e534e3456;  filename: file_renamed.txt;
modified on branch
=============================================================================

C:\cvs\test\rename>




-- 
Bryce Schober


More information about the cvsnt mailing list