Multisite CVS
Hello CVS, I would like to know that whether CVS supports multisite or not. Multisite in the sense a true multisite solution not just mirroring the disk on, which the CVS repository exists to another machine, and periodically syncing it. TIA, regards, Naveen ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: Newbie Problem: About repositiory
Xicheng Jia wrote: On Mon, 4 Nov 2002, Mike Ayers wrote: 4. Run a script which deletes all the CVS/Root directories and then `cvs -d /new/path/to/repository update` Can you tell me how to make such script file? NOTE: this is extremely dangerous! *MAKE A BACKUP FIRST* find . -type f -name Root |xargs rm Also, shall I delete all 3 files in CVS directory or just the file Root? Thanks a lot. :-) Just delete the CVS/Root files. Wiping out any more will break the working directory. -Matt ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: Multisite CVS
Hello CVS, I would like to know that whether CVS supports multisite or not. Multisite in the sense a true multisite solution not just mirroring the disk on, which the CVS repository exists to another machine, and periodically syncing it. No, it doesn't. It is possible to mirror the repository, but not to have multiple equal sites. There are several obvious difficulties in having such a multisite repository, things like race conditions. I don't know how other systems with multisite repositories handle these, or if they do at all well. -- Now building a CVS reference site at http://www.thornleyware.com [EMAIL PROTECTED] ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Adding maillog.pl script to checkoutlist causes it to loose permissions
I have added a perl script to checkoutlist in CVSROOT. When its extracted, it does not have the execute permission. Is there a way to get ot to extract with the execute permission, or would I have to have a script triggered off of somewhere to modify the permissions after its extracted? Thanks, Brian ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: Multisite CVS
Naveen Kumar writes: I would like to know that whether CVS supports multisite or not. Multisite in the sense a true multisite solution not just mirroring the disk on, which the CVS repository exists to another machine, and periodically syncing it. That depends on exactly what you mean by a true multisite solution. CVS's client/server mode works extremely well for multisite development, but the repository isn't replicated: everyone has to access the same central repository across whatever network you have. Because CVS sends diffs whenever possible and provides the ability to compress all the network traffic, that works pretty well even across slow links. -Larry Jones It's clear I'll never have a career in sports until I learn to suppress my survival instinct. -- Calvin ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: CVS Server problems
Leon Mergen writes: Nov 7 00:18:38 [xinetd] START: cvspserver pid=15084 from=130.89.169.91 Nov 7 00:18:38 [xinetd] FAIL: cvspserver address from=130.89.169.91 So this means that cvspserver can't start... but what am I doing wrong then? Any ideas? Yes, I already gave them to you: Check the permissions on CVS. Try telnetting to port 2401 (telnet localhost 2401) -- if the connection immediately closes, then either xinetd is unable to start CVS or CVS immediately dies. If the connection stays open, try hitting return -- you should get an error message from CVS. -Larry Jones Mom would be a lot more fun if she was a little more gullible. -- Calvin ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: Adding maillog.pl script to checkoutlist causes it to loose permissions
At 11:06 AM 11/7/2002, Brian Kowald wrote: I have added a perl script to checkoutlist in CVSROOT. When its extracted, it does not have the execute permission. Is there a way to get ot to extract with the execute permission, or would I have to have a script triggered off of somewhere to modify the permissions after its extracted? chmod +x $CVSROOT/CVSROOT/maillog.pl,v Then delete the file in your sandbox and cvs update. It should now be executable. Fred ___ Frederic W. Brehm, Sarnoff Corporation, http://www.sarnoff.com/ ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
RE: CVS Server problems
Hello Larry, I have just ran XinetD in debug mode. It gives me this data: 02/11/7@18:14:37: DEBUG: {main_loop} select returned 1 02/11/7@18:14:37: DEBUG: {server_start} Starting service cvspserver 02/11/7@18:14:37: DEBUG: {main_loop} active_services = 1 02/11/7@18:14:37: DEBUG: {main_loop} select returned 1 02/11/7@18:14:37: DEBUG: {check_pipe} Got signal 17 (Child exited) 02/11/7@18:14:37: DEBUG: {child_exit} waitpid returned = 12449 02/11/7@18:14:37: DEBUG: {server_end} cvspserver server 12449 exited 02/11/7@18:14:37: DEBUG: {child_exit} waitpid returned = -1 02/11/7@18:14:37: DEBUG: {main_loop} active_services = 1 Do you have any idea why it says child exited ? This means that cvspserver immediately dies? What could be the cause of this? Thanks in advance. Regards, Leon Mergen -Original Message- From: [EMAIL PROTECTED] [mailto:info-cvs-admin;gnu.org] On Behalf Of Larry Jones Sent: Thursday, November 07, 2002 5:20 PM To: Leon Mergen Cc: [EMAIL PROTECTED] Subject: Re: CVS Server problems Leon Mergen writes: Nov 7 00:18:38 [xinetd] START: cvspserver pid=15084 from=130.89.169.91 Nov 7 00:18:38 [xinetd] FAIL: cvspserver address from=130.89.169.91 So this means that cvspserver can't start... but what am I doing wrong then? Any ideas? Yes, I already gave them to you: Check the permissions on CVS. Try telnetting to port 2401 (telnet localhost 2401) -- if the connection immediately closes, then either xinetd is unable to start CVS or CVS immediately dies. If the connection stays open, try hitting return -- you should get an error message from CVS. -Larry Jones Mom would be a lot more fun if she was a little more gullible. -- Calvin ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: Multisite CVS
Couldn't you use something like CVSup and automatically trigger its execution after every check in? Is there more to a multisite repository than meets the eye? (I assume the poster is aware that cvs works just fine half way around the world from the repository.) James Lee Carpenter Software Engineer Household Technical Services 6602 Convoy Court San Diego, CA 92111 ph: 858-609-2461 email: [EMAIL PROTECTED] [EMAIL PROTECTED] Sent by: To:[EMAIL PROTECTED] [EMAIL PROTECTED] cc:[EMAIL PROTECTED] g Subject: Re: Multisite CVS 11/07/2002 06:14 AM Hello CVS, I would like to know that whether CVS supports multisite or not. Multisite in the sense a true multisite solution not just mirroring the disk on, which the CVS repository exists to another machine, and periodically syncing it. No, it doesn't. It is possible to mirror the repository, but not to have multiple equal sites. There are several obvious difficulties in having such a multisite repository, things like race conditions. I don't know how other systems with multisite repositories handle these, or if they do at all well. -- Now building a CVS reference site at http://www.thornleyware.com [EMAIL PROTECTED] ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: Adding maillog.pl script to checkoutlist causes it to loose permissions
Brian Kowald writes: I have added a perl script to checkoutlist in CVSROOT. When its extracted, it does not have the execute permission. Is there a way to get ot to extract with the execute permission, or would I have to have a script triggered off of somewhere to modify the permissions after its extracted? Set execute permission on the ,v file in the repository. If the script had been executable when you first added it to CVS, that would have been done for you. -Larry Jones Things are never quite as scary when you've got a best friend. -- Calvin ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: Multisite CVS
On Thu, 7 Nov 2002 [EMAIL PROTECTED] wrote: Couldn't you use something like CVSup and automatically trigger its execution after every check in? Is there more to a multisite repository than meets the eye? There is more. What happens in distributed development is that people work on their own local stream; the other sites get some kind of patches that they have to integrate. Support for changesets can help with this, but you can't get around the requirement that there will have to be merges. Moreover, since you want everyone to end up with the same code, there has to be sufficiently frequent backpropagation of the integrated material. A version control tool with good third party source tracking can be used to implement a half-decent distributed process. You can have one ``master'' repository where all of the inputs from all the development teams are integrated. The teams work with their own repositories. The master repository gets code snapshots, tracks them using individual third-party branches, and merges them into the main trunk. Every once in a while, the disconnected developers have to synchronize by getting a snapshot of the main trunk, which they can track on their own third-party branch. After such a synchronization, the master repository can start a new branch for each synchronized team. If you synchronize with ``release-1-3'' from the master repository, then your next piece of work will be a derivative of that baseline; the master repository acn start a new branch for capturing your input, shooting from release-1-3, rather than continuing with your old branch, which would then capture extraneous differences arising from the backpropagation. CVS has something called ``vendor branching'', but it can't handle these requirements. Using regular CVS branches in this way involves a whole lot of error-prone manual labor. plugMeta-CVS, on the other hand, has more advanced third-party tracking which can implement the above model using a few simple commands./plug The nice thing about this model is that the teams can implement whatever local process they want, using whatever tools they are comfortable with. All that the master repository keepers need from a team is a code snapshot. (Under Meta-CVS, that snapshot can, relative to the previous snapshot, contain adds, removes, renames, execute permission changes and reconfigurations of symbolic links; these changes are automatically figured out). The disadvantage of this process is that detailed commit history is lost, because the inputs to the master repository are just snapshots. This problem can be partially alleviated if people maintain a detailed ChangeLog type file. Version control tools that support changesets take care of propagating such change details. But on the downside, they require everyone to use them; the individual teams have to produce a changeset that the master repository understands. ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: CVS Server problems
Leon Mergen writes: Do you have any idea why it says child exited ? This means that cvspserver immediately dies? What could be the cause of this? For the third time: Check the permissions on CVS. Try telnetting to port 2401 (telnet localhost 2401) -- if the connection immediately closes, then either xinetd is unable to start CVS or CVS immediately dies. If the connection stays open, try hitting return -- you should get an error message from CVS. You should also try running by hand the exact CVS command that xinetd is running and see if you get any error messages. The same protocol as for telnet applies, if it doesn't immediately die, hit return. -Larry Jones I'm not a vegetarian! I'm a dessertarian. -- Calvin ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: Multisite CVS
--- Forwarded mail from [EMAIL PROTECTED] I would like to know that whether CVS supports multisite or not. Multisite in the sense a true multisite solution not just mirroring the disk on, which the CVS repository exists to another machine, and periodically syncing it. No, it doesn't. It is possible to mirror the repository, but not to have multiple equal sites. There are several obvious difficulties in having such a multisite repository, things like race conditions. I don't know how other systems with multisite repositories handle these, or if they do at all well. All of the systems I've examined in detail solve most of the problems by establishing ownership of various meta-data to each site. Each site can modify the meta-data it owns, and cannot modify any of the meta-data owned by other sites. There has been discussion of multi-site CVS issues in this forum several times in the past, along with one or two proposals that people seem to think are promising. One involves copying parts of the version tree for each artifact to other sites and attaching it to a version tree at the other sites. Then repeating the process back. A site cannot commit to branches that were imported from other sites. You can find more detailed descriptions in the archives. --- End of forwarded message from [EMAIL PROTECTED] ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: Multisite CVS
Can CVSup so something useful if a person at both sites commits to the trunk between updates? How is that type of conflict resolved? What if people at both sites apply the same tag? --- Forwarded mail from [EMAIL PROTECTED] Couldn't you use something like CVSup and automatically trigger its execution after every check in? Is there more to a multisite repository than meets the eye? (I assume the poster is aware that cvs works just fine half way around the world from the repository.) --- End of forwarded message from [EMAIL PROTECTED] ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
RE: CVS Server problems
-Original Message- From: Larry Jones [mailto:lawrence.jones;eds.com] Sent: Thursday, November 07, 2002 8:22 PM To: Leon Mergen Cc: [EMAIL PROTECTED] Subject: Re: CVS Server problems You should also try running by hand the exact CVS command that xinetd is running and see if you get any error messages. The same protocol as for telnet applies, if it doesn't immediately die, hit return. I just did this. I ran /usr/bin/cvs -f --allow-root=/var/lib/cvsroot pserver just like it says in my xinetd.d/cvspserver-tcp file... it is kinda strange... it doesn't accept any connections then, but when I press enter in the terminal then, I get this: root@solatis2 lmergen # /usr/bin/cvs -f --allow-root=/var/lib/cvsroot pserver cvs [pserver aborted]: bad auth protocol start: root@solatis2 lmergen # So it seems like it acts like a server-in-client version... you start it, and you have to speak the protocol to it? Sounds really strange to me... You have any suggestions? Thanks in advance, Leon Mergen ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: CVS Server problems
Leon Mergen writes: root@solatis2 lmergen # /usr/bin/cvs -f --allow-root=/var/lib/cvsroot pserver cvs [pserver aborted]: bad auth protocol start: That's the correct result. We now know that your CVS works correctly when run interactively, so we just need to figure out what goes wrong when it's run from xinetd. Try running it by hand in a clean environment like you get from xinetd using the env command: env - PATH=$PATH /usr/bin/cvs -f --allow-root=/var/lib/cvsroot (Check the man page for env: some versions use a bare - to clear the environment, others have an actual option.) Also try running it as root, since that's what xinetd is doing. And *PLEASE* try the telnet test. -Larry Jones Wow, how existential can you get? -- Hobbes ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
RE: CVS Server problems
Hello Larry, -Original Message- From: Larry Jones [mailto:lawrence.jones;eds.com] Sent: Thursday, November 07, 2002 10:15 PM To: Leon Mergen Cc: [EMAIL PROTECTED] Subject: Re: CVS Server problems LJ That's the correct result. We now know that your CVS works correctly LJ when run interactively, so we just need to figure out what goes wrong LJ when it's run from xinetd. Try running it by hand in a clean LJ environment like you get from xinetd using the env command: LJ LJ env - PATH=$PATH /usr/bin/cvs -f --allow-root=/var/lib/cvsroot LJ LJ (Check the man page for env: some versions use a bare - to clear the LJ environment, others have an actual option.) Also try running it as LJ root, since that's what xinetd is doing. I did a check on env, and mine requires -i , so I executed this: solatis2 root # env -i PATH=$PATH /usr/bin/cvs -f --allow-root=/var/lib/cvsroot pserver Then I did an nmap on localhost, and found out that port 2401 isn't open. Is this supposed to happen with env? LJ And *PLEASE* try the telnet test. Hehe, I always do the telnet test, don't worry... this time Connection refused again, which is expected when the port isn't open :) Thanks in advance for your help! Grtz, Leon ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: CVS Server problems
Leon Mergen writes: solatis2 root # env -i PATH=$PATH /usr/bin/cvs -f --allow-root=/var/lib/cvsroot pserver And? Did it run? Did you hit return and get the expected error message? Then I did an nmap on localhost, and found out that port 2401 isn't open. Is this supposed to happen with env? Yes and no. It's xinetd that opens the port, not CVS, so the port won't be open just because you run CVS, but xinetd should still be running and thus the port should be open, unless you stopped xinetd and didn't restart it. LJ And *PLEASE* try the telnet test. Hehe, I always do the telnet test, don't worry... this time Connection refused again, which is expected when the port isn't open :) See above -- the port *should* be open, unless xinetd isn't running. Start xinetd, do the telnet test, and tell us what happens! -Larry Jones My upbringing is filled with inconsistent messages. -- Calvin ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: Compilation of cvs
Matt Frick writes: MIME-Version: 1.0 Content-Type: multipart/alternative; Please do not post MIME and/or HTML encrpyted messages to the list. Plain text only, PLEASE! have set my email client to plain text only so hopefully wont make that mistake again :) I am currently trying to get a static compilation of cvs on a freebsd 4.5 system. what I am trying to do is ./configure --disable-client make configure goes well but get some errors on a make. logmsg.c: In function `do_editor': logmsg.c:198: structure has no member named `isremote' logmsg.c:199: structure has no member named `isremote' That's a bug that's fixed in the current development version of CVS. Either get the current development version from www.cvshome.org or don't disable the client. I have tried and recieved errors on 3 different versions I have downloaded from www.cvshome.org . the versions I have tried are cvs-1.11 cvs-1.11.1p1 cvs-1.11.2 is there another version I should be trying?? if not should I possible post a more detailed make error listing? thanks for your time Matt. ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs