Peschko, Edward writes:
> 
> 3) run the cvs command that you want to debug or trace with CVS_CLIENT_LOG, 
>     against the copied cvs tree. Note that you need to use a cvs tree with pserver,
>     not :ext.

That is not true, *any* client/server mode will work.  I usually use
:fork:.

> Caveats: Note that follow-fork-mode child does *not* work, nor does debugging parent
> code after the fork (it causes an ABRT signal ). Note also that there will be a 
> disconnect
> between the debugging and the real world because the above will only output what 
> happens
> to stderr, and not actually apply any of the changes to the cvs tree.

Not so -- you're running the server, it will do everything it usually
does.  If you send it commands that affect the repository, it will
update the repostitory.

> I'm not sure how you'd do the above in daemon mode,

If you really need to do that, you should already know how.  :-) One
approach is to have inetd run a shell script that sets $CVS_SERVER_SLEEP
before invoking CVS to give you time to connect to the child process.

> or how you can use the output from the server, and redirect it
> to a cvs client call (in gdb). Perhaps someone could elaborate?

Similar to the above, if you set $CVS_SERVER_SLEEP and then run using
the :fork: method, that will give you a normal client/server setup and
give you time to attach to the server child process with a debugger.

-Larry Jones

I don't think math is a science, I think it's a religion. -- Calvin


_______________________________________________
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs

Reply via email to