[cvsnt] Re: repository names and CVSROOT variable in commitinfo script

Oliver Koltermann okoltermann_deletethis_ at gmx.de
Tue Dec 13 15:11:33 GMT 2005


Hello again,

this seems to be a one-man-show-thread, but I have more clues now. I
first noticed this problem in conjunction with repository names, but
it seems to be a general one.

Oliver Koltermann <okoltermann_deletethis_ at gmx.de> writes:

> Hello Tony & list,
> 
> after changing from physical to logical repository names i found my
> commitinfo script disabled. I have added a script file to the
> checkoutlist of my CVSROOT to put a stylechecker inside. My commitinfo
> contained the line
> 
> ALL C:/Python24/python.exe $CVSROOT/CVSROOT/checkstyle.py

This is exactly the useage as described in the manual, section "The
checkoutlist file", where i find this example commitinfo line:

ALL   $CVSROOT/CVSROOT/logcommit.pl

According to Bo this example is not working on all systems because on
Win32 it depends on the .pl extension to be registered and the
execution path to contain the perl interpreter *for the system
account*. This should be stated somewhere.

And when using repository names it is not working at all, as you see
here:

> Which worked well as long as the repository was accessed by a
> connection like :pserver:user at cvs.server:C:/cvsrepo containing a
> physical path. Now the virtual name /repo is used as repository name
> for the same location, but I get the error:
> 
> C:/Python24/python.exe: can't open file '/repo/CVSROOT/checkstyle.py':
>    [Errno 2] No such file or directory

In the manual section "Commitinfo" I read the following:

"The default pattern used if none is specified is %r/%p %<s, which
causes the full path to the current source repository to be appended
to the template, followed by the file names of any files involved in
the commit (added, removed, and modified files)."

The %r is *not documented*, but from what I have seen in my script it
must be the base path of the repository (or a copy of it). So the
script itself get's the right absolute directory. Only the $CVSROOT
inside commitinfo seems to be broken.

Thanks for listening,
O. Koltermann



More information about the cvsnt mailing list