[cvsnt] Re: Documentation for the CVSROOT/shadow script?

Bo Berglund bo.berglund at telia.com
Tue Jan 3 15:11:22 GMT 2006


On Tue, 3 Jan 2006 14:48:30 +0000 (UTC), "Oliver Giesen"
<ogware at gmx.net> wrote:

>
>I cannot confirm that - although I can confirm that it probably does
>not work as intended...
>Did you actually enable the plugin via the CVSNT control panel?

Which plugin would that be? There is nothing there that remotely looks
like "shadow"...

But now I tried "Automatic checkout extension"
and got similar results as you did.

>
>I put the following in CVSROOT/shadow :
>
>test HEAD d:/Temp/autocheckout/
>
>
>Committing a change to test/Blah.txt resulted in the following (with
>verbose output enabled in the plugin options):
>
>cvs -z9 -q commit -m change -- Blah.txt
>Checking in Blah.txt;
>/testroot2151/test/Blah.txt,v  <--  Blah.txt
>new revision: 1.4; previous revision: 1.3
>done
>cvs checkout: Updating d:/Temp/autocheckout
>
>U d:/Temp/autocheckout/Blah.txt
>
>Malformed line 9 in CVSROOT/shadow - Need Module Tag Directoryok

This is what I got:

Checking in ThirdFile.txt;
/KORVkiosk/ModuleXX/ThirdFile.txt,v  <--  ThirdFile.txt
new revision: 1.37; previous revision: 1.36
done
CVSMailer processing
CVSMailer processing consolidated messages
Malformed line 9 in CVSROOT/shadow - Need Module Tag Directoryok

My line #9 is actually an empty line preceding the checkout spec line.
By removing that line (forcefully directly in the CVSROOT dir) and
repeating the procedure there were no longer any error messages.

>cvs [commit aborted]: received interrupt signal
>
>As you can see I had to manually stop cvs as it was hanging after the
>"Malformed..." line.

After fixing shadow so that there were no empty lines and so getting
rid of the error, I tested another track by erasing the full contents
of the target directory as specified by shadow, including the dir
itself.
Then I repeated the experiment and I got a full recreated checked out
module from CVS! :-)

SUMMARY
1. The CVSROOT/shadow file does not allow empty lines <= bug???
2. Each line must be either commented out by # or contain a 
   valid expression.
3. In order for the shadow to work the plugin "Automatic checkout
   extension" must be enabled in the CVSNT control panel
4. CVSNT will create the shadow sandbox if it does not already exist
5. Missing directories will be created also in an existing shadow
   where some subdirectories have been deleted including their
   notes in the CVS/Entries files

I guess that completes the investigation.


/Bo
(Bo Berglund, developer in Sweden)



More information about the cvsnt mailing list