Re: CVS Lock Files
In the mean time, I could modify my shell script to do a combo on 'find' : find /cvs/ -name *lock* -ctime? I'll look for any locks older than a certain number of days. However, the problem is that our Builds are automated and at 2 a.m. I'm not here watching them to call or stop the person who caused the problem and if the builds are successful, the tagging must go on. If you are absolutely sure no people are working on the repository at 2am, you could consider removing all locks at 1:55 or even in the same cron script before the build starts. But be aware of the problems when someone eventually decides that 2:00 am is a perfectly sound time to checkin new sources... (taking into account timezone shifts and the like). Arno -- np: Spock's Beard - Crack The Big Sky ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
Re: CVS-Directories disappear when uploading per SFTP-Client
The problem is the following: the cvs server is at the same time the web server where the application runs. So I have to checkout to the web server. But: My IDE runs locally on my machine and it needs the complete source code to enable it to use code completion etc. Between my local machine and the server there is only a DSL connection so I have the local changes mirrored to the web server (using the SFTP client) and then do the commit from the web server. Any better ideas? Let CVS mirror the changes to the webserver. CVS is perfectly capable of handling multiple copies itself. There are some options you can consider: - Since you have stfp access, I'm assuming you have ssh shell access as well. Go into your webserver's content directory and do a cvs checkout there. Each time you want to update the site, simply perform a cvs update on the webserver. Maybe change the settings of your webserver to ignore/hide the CVS/ directories (apache: modify the .htaccess file) - This can be automated (but DON'T do that on your production site, since every mistake that gets committed to the repository will immediately be seen on the web), see https://www.cvshome.org/docs/manual/cvs-1.11.20/cvs_18.html#SEC177 (keeping a checked out copy) - If somehow your sftp program/filesystem/ghost in the machine insists on removing the CVS/ directories when you upload, try uploading from another sandbox (so basically you will have two sandboxes on your local pc: one for 'work' and one for 'upload'). The 'upload' copy can be created with cvs export, if you want. Arno -- np: Dead Can Dance - Sanvean ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
Re: have finished reading http://cvsbook.red-bean.com/cvsbook.htmlhowever, ..
[...] but this is a bit tricky, so making copies, doing cvs update -A and then moving the copies over and then checking in is perfectly acceptable. Did I forget something, or CVS should have been left the original in the file .#hello.c.1.1? Only if you do update -C, I think. update -A still tries to merge, as would a normal update do. Arno -- np: Monty Python - Oliver Cromwell ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
Re: $id automatically inserted in file
Klaus Hebsgaard [EMAIL PROTECTED] schreef in bericht news:[EMAIL PROTECTED] Sorry for not writing this from the beginning - I knew about this option, however i access cvs through tortoise, and am not able to send commandline options, is it really not possible to set this up on the server? TortoiseCVS does support this option, though to my knowledge only at add-time. You can change keyword expansion when you choose cvs add... and then right-click the file in the dialog box. You might want to ask on the tortoise mailing list for more expert knowledge on tortoisecvs. Arno -- np: Supertramp - Take The Long Way Home ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
Re: branches and merging
Venkatesh, Vijay [EMAIL PROTECTED] writes: I guess this is a fairly often asked question but just wanted to run this by everyone to get some feedback first. (am referring to the essential cvs guidebook) Have two branches app4 and app4_test, which I need to merge (and have done so already into the app4 branch, so merged from app4_test into app4) question1 : should i now tag app4 to signify the point at which the merge was made? It would be prudent to do this if you ever wish to do subsequent merges of the app4_test into the app4 branch in the future. However, if app4_test is to be left dorment, then the tag is not really useful. I haven't done much merging myself lately, but I always believed a branch-to-branch merge needed two states (tags) of the source branch, and the current state of the target branch. Or is both possible? My question more clearly: why tag the target branch instead of the source branch? Does it really matter which one you choose? Arno -- np: Genesis - Hairless Heart ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
Re: branches and merging
That was more response than I had even hoped for. This is a good candidate to become a sticky at my desk somewhere :) Thank you! Arno I haven't done much merging myself lately, but I always believed a branch-to-branch merge needed two states (tags) of the source branch, and the current state of the target branch. Or is both possible? If you are to continue doing branch merges in the future, it is usually desirable to tag the source branch so that you will know where to start the next time you do a merge to the destination branch (for purposes of discussion call this tag the 'merge-point'). Some people find it desirable to create a tag on the destination branch just before doing the merge to facilitate backing out all of the changes should it be determined that the branch was ill done (for purposes of discussion call this tag the 'pre-sync-point'). Some people find it desirable to create a tag on the destination branch just after the merge is complete so that they may be able to compare the tag on the source branch with the post-merge tag to determine the drift between the two branches (for purposes of discussion call this tag the 'post-sync-tag'). My question more clearly: why tag the target branch instead of the source branch? Does it really matter which one you choose? Typically, when one creates a new (child) branch, one will also create a branch-point tag (for purposts of discussion call this tag 'branch-point') on the parent branch. Consider the following work... It is time to create the child-branch from the parent-branch cvs checkout -r parent-branch -d parent module cvs tag child-branch-point cvs tag -b child-branch ... It is time to merge the changes of the parent into the child cvs checkout -r parent-branch -d parent module cd parent cvs tag parent-merge-point-1 cvs checkout -r child-branch -d child module cd child cvs tag child-pre-sync-point cvs update -jchild-branch-point -jparent-merge-point-1 ...resolve conflicts cvs commit cvs tag child-post-sync-point At some later time, if it is desirable to merge the changes of the parent into the child again, one does: cvs checkout -r parent-branch -d parent module cd parent cvs tag parent-merge-point-2 cvs checkout -r child-branch -d child module cd child cvs tag child-pre-sync-point-2 cvs update -jparent-merge-point-1 -jparent-merge-point-2 ...resolve conflicts cvs commit cvs tag child-post-sync-point-2 If at this time it is desirable to move all of the changes developed on the child-branch into the parent-branch, then something like: cvs checkout -r child-branch -d child module cd child cvs tag child-merge-point-1 cvs checkout -r parent-branch -d parent module cd parent cvs tag parent-pre-sync-point-1 cvs update -jchild-merge-point-1 ...the above command is the same as 'cvs update -jchild-branch-point .. -jchild-merge-point-1' ...resolve conflicts... cvs commit cvs tag parent-pst-sync-point-1 In the general case, the pre-* and post-* tags are not necessary. I urge you to one of the fine books on cvs (cf, https://cvsbook.red-bean.com/) to help you understand the subtle points... ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
RE: Can't checkout to my C: root directly *PANIC* Admin Files Missing
I'm not sure, but I might have (at least) a clue for you... Hi I've tried 4 or 5 different Windows command-line versions of cvs.exe from (1.10.5 to 1.11.20). Created a folder called cvs directly under C:\, pointed the path stmt to it. Created Home=C: and CVSROO envrionment variables, etc and successfully logged in to our linux repository where CVS is kept. Note that you say created a folder called cvs directly under C:\... If I check out any of our CVS modules or projects from the main respository to any subfolder of my drive C: everything goes smoothly. However none of the versions of CVS I tried allow me to directly check out a project to the root. So when at the dos prompt and I type C:\cvs co -P newproj I get these bizzare errors: cvs checkout: in directory .: cvs [checkout aborted]: *PANIC* administration files missing I think cvs treats the 'cvs' dir found as its own administrative dir. It then fails because it expects CVS/Repository and CVS/Root to exist, which obviously don't. Remember that windows' filesystem is case insensitive... I'm not exactly sure of this, though: I fail to reproduce this on my machine (though it is linux, not windows): [EMAIL PROTECTED]:~/work mkdir CVS [EMAIL PROTECTED]:~/work cvs up cvs update: in directory `.': cvs update: CVS directory found without administrative files. cvs update: Use CVS to create the CVS directory, or rename the cvs update: directory if it is intended to store something cvs update: besides CVS administrative files. cvs [update aborted]: *PANIC* administration files missing! [EMAIL PROTECTED]:~/work cvs --version Concurrent Versions System (CVS) 1.12.11 (client/server) [...] but checkouts do succeed: [EMAIL PROTECTED]:~/work cvs co -P in4073 cvs checkout: Updating in4073 [...] P.s. I meant to say WinXP desktop and Win2003 netwrk servers and repositories being on Linux servers. Thanks again Steven Hope this helps, Arno Information without knowledge is noise knowledge without wisdom is dangerous stupidity _ Play online games with your friends with MSN Messenger http://messenger.msn.nl/ ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
Re: rcsinfo/loginfo exclude directories
You are confusing [^] with ^ ^test-mode matches from the beginning of the line. [^1234] matches a character other than 1234. http://www.regular-expressions.info/reference.html I am not aware of a general purpose not for regular expressions. As a rule, regular expressions try to match something, not not match something. Isn't it true that rcsinfo only picks the first line that matches? I think I remember something like that, but can't find it explicitly in the manual now. If so, you could create a filter like: what_I_want_to filter /dev/null Everything_not_filtered my_rcsinfo_template In your case: test-module /dev/null DEFAULT /home/cvs/2.5/CVSROOT/bugz.txt Arno (and sorry for half top-posting) -Original Message- hi, how does one specify, in the common syntax, the exclusion of a file? For example, I want to apply a script called bugz.txt to ALL commits except modules listed at the bottom of rcsinfo. i have this regular expression in rcsinfo that I thought tells cvs to apply bugz.txt to all modules that DO NO contain the string 'test-module' but it doesn't work: what is the correct syntax for not? I thought the '^' character was proper regexese. ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
Re: Arggg, I thought I had cvs worked out but I didn't
I didn't know installing cvs would be this complicated... I was actually looking all over the internet for tutorials on how to install cvs. I found tutorials that show people as root installing and using cvs, but I guess those tutorials are wrong. (See http://www.linux.ie/articles/tutorials/cvs.php) The link above concerns only pserver authentication; it is the only authentication method that requires cvs to be run as root. And, if you search the archives of this list you will find numerous objections to using pserver for read-write access. Btw, installing cvs is not complicated. You have already installed cvs. Configuring might require some more work, depending on your requirements. 3) did cvs init as root (worked) -- So I guess for here, I should create an account called cvs _without_ administrative privileges. Administrative privileges aren't the problem. By default, cvs just assumes user root will never be checking in files (you can have other users with administrative privileges and have them happily use cvs). You don't have to create a user account for cvs. You should do cvs init as the user that is going to use the repository. However, you should make sure that every user that is going to use the repository can access it both read-write. btw, if user 'root' is the user you always log in as, then change that behaviour. There is no need for it. % id ...gid=nn0(name0) groups=nn1(name1),nn2(name2),nn3(name3)... I am definitely unfamiliar with that syntax. I mean, is nn0() a function that takes a c/c++ style char *? Have you tried typing id at your console? [EMAIL PROTECTED]:~ id uid=500(aschuring) gid=101(LooS) groups=101(LooS),100(users),104(cvs),105(cvs-mca),106(cvs-java),107(cvs-docs),108(cvs-cc),109(cvs-erts) choose one of the groups of which you (and your other users) are a part as the group for your /cvs repository. As seen by my id command above, I am a member of group 104 (group name cvs). Being a member of this group gives me access to the $CVSROOT at my machine. Also, I make sure that other users on the same machine are a member of this group as well. % chgrp -R nameN /cvs % find /cvs -type d -print |xargs chmod g+rwxs I am actually very new to linux as I have been using windows for about 10 years. Cut'n'paste is fairly common in windows too ;) You need to be able to create lock directories in the /cvs repository and if it is owned by root and you are not a member of the group for the directory, this will be a problem. I have no idea what a lock directory is... and I definitely don't know how to make groups own a certain directory. If there's a book for total linux noobies on how to install cvs, I will definitely buy that book. Lock directory: https://www.cvshome.org/docs/manual/cvs-1.11.20/cvs_10.html#SEC87 https://www.cvshome.org/docs/manual/cvs-1.11.20/cvs_18.html#SEC158 Groups: http://www.dartmouth.edu/~rc/help/faq/permissions.html http://search.yahoo.com http://www.google.com HTH, Arno -- np: Dido - White Flag ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
Re: Win32 cvs client - Unix cvs server
set CVSRSH to something like this: C:\tools\Putty\plink.exe -ssh -pw mypassword The env var CVSRSH is the rsh command that cvs ext: is to run. Setting CVSRSH (to anything) makes no difference. If I run: try CVS_RSH Arno ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
Re: cvs update not handling binary files with conflicts correctly
[...] When the update command is run it says that there is a conflict in the WORD.tar (binary file). But when I ran cvs -nq update after the changes are merged it shows that the Binary file has no conflicts. It is supposed to mark it with a 'C' right? CVS already told you... $ cvs -f up -d -kk -j TAG1 -j TAG2 WORD.tar test9.txt cvs update: nonmergeable file needs merge cvs update: revision 1.1.2.2 from repository is now in WORD.tar cvs update: file from working directory is now in .#WORD.tar.1.1.4.2 Which basically means that the WORD.tar revision is now the same as in the repository. If you want to create your conflict again, do a $ mv .#WORD.tar.1.1.4.2 WORD.tar and run cvs up Arno np: Marillion - The Fruit Of The Wild Rose ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
Re: Security Breach Alert - CVS Home File Download Area Compromised
When I download a source *.tar.gz and corresponding *.tar.gz.sig, I get file sizes consistent with values on download page and a PGP signature check reports a valid file. I haven't been able to download cvs-1.11.18.tar.gz.sig, does not even create an empty file. When clicking 'info' on the download page, it says 'file size: 0.0'. This is using Firefox 1.0 on Windows XP. md5 of the source: fff9cf794701b27de56b907746176c71 *cvs-1.11.18.tar.gz cvs-1.11.11-SunOS-5.8-i386.gz from cvshome.org is 708 kB (725.534 bytes) cvs-1.11.18-SunOS-5.8-i386.gz from cvshome.org is 720 kB (737.299 bytes) md5: 35608cc22fa1cae86f43cb9336a5e12e *cvs-1.11.11-SunOS-5.8-i386.gz 5d88c104ef5b35b2996a44fa34a39170 *cvs-1.11.18-SunOS-5.8-i386.gz sig files are all 0.0 bytes when clicking 'info', even though the download page says they're 66 bytes: FILE cvs-1.11.18-SunOS-5.8-i386.gz.sig (File size: 0.0) For what it's worth: fff9cf794701b27de56b907746176c71 *cvs-1.11.18.tar.gz 3986d5a825cfb82436e7934b4bf71287 *cvs-1.11.18-AIX.gz 35608cc22fa1cae86f43cb9336a5e12e *cvs-1.11.11-SunOS-5.8-i386.gz 5d88c104ef5b35b2996a44fa34a39170 *cvs-1.11.18-SunOS-5.8-i386.gz dbaf26eb74d5d4fa5201bb82f0d858ac *cvs-1-11-17.zip e07f84dceb46e0b5a8a12dabd648d8e1 *cvs-1.11.18-HP.gz f91de7cbed9dedb794b078ee32a0ebf4 *cvs-1.11.18-SUN.gz File sizes appear to match the sizes indicated on the download page. I haven't been able to download any files at all using IE6 sp2. error message: HTTP redirect failed HTH, Arno ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
Re: Can't download CVS!
Rhino writes: What are your thoughts on the relative merits of CVS, CVSNT, and WinCVS? Why would I choose one over the other? What are the negatives of each? Which of these integrates best with Eclipse? (snip - can't help you with CVS vs CVSNT) (..) As far as I know, Eclipse is similar in that it interfaces with some CVS implementation and should be happy with either CVS or CVSNT. Eclipse has its own CVS client integrated - no need for either CVS or CVSNT installed. There used to be issues with Eclipse's client talking to a 1.12.x server, not sure if they are resolved yet. You con't need an external CVS client if you're just using Eclipse, just open the CVS repositories perspective and add your sites. You may run into problems when using any other CVS client to access Eclipse' workspace, because of the :extssh: connection method that Eclipse uses by default HTH, Arno ___ Info-cvs mailing list Info-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/info-cvs
Re: Update and removing non-versioned workspace files
I can think of a lot of reasons for cvs not to do so... not even at user request. You can always do cvs -n up | awk '$1=="?" { print $2; }' | xargs rm np: Primus - Those Damned Blue-Collar Tweekers - Original Message - From: Keith Chong To: [EMAIL PROTECTED] Sent: Friday, December 17, 2004 10:56 PM Subject: Update and removing non-versioned workspace files Is there a way to use update and have any non-versioned files deleted from your local workspace? -C doesn't appear to do it. Thanks for any help. ___Info-cvs mailing list[EMAIL PROTECTED]http://lists.gnu.org/mailman/listinfo/info-cvs ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
Re: Ignoring whitespace and CR/LF when checking into repository
These make me ask more questions. What is the default line ending character for ASCII files store in a repository ?. Is this varies from OS to OS ?. Does CVS client or server is supposed to perform the line ending character conversion when a ASCII file is committed ? RCS files have unix line endings (regardless of OS, I believe). The CVS client is responsible for the line-ending conversion. Now the root cause of my problem is that when checked in by windows developers using Eclipse it have CR/LF as line ending character and it is stored as it is. Now I want that all files must be stored in Unix format. Eclipse has an option treat all new files as binary which might be causing your problems. cvs does not convert line endings in binary files. The ,v-files in the repository should not have any CR/LF line endings. I got away with using dos2unix -f directly on the respository. Regards, Arno ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
Re: CVS for DOS?
Hello Spiro! Regarding ssh for dos: there is no widely-used tcp/ip stack available for DOS, so such network applications you are very unlikely to find. http://www.wattcp.com is the only one that I know of, but I have never seen a ssh client that uses wattcp. I imagine it would be possible to port cvs to DOS using djgpp (http://www.delorie.com/djgpp), but you would still be stuck at the connectivity level - DOS has no native networking support. There is no real risk in mixing DOS and windows environments (especially up to w98), since they share a common base (filesystem, line endings). You might run into problems with long filenames, but you probably already have encountered (or willfully avoided) those. Regards, Arno np: Pain Of Salvation - A Trace Of Blood - Original Message - From: Spiro Trikaliotis [EMAIL PROTECTED] To: info-cvs ML [EMAIL PROTECTED] Sent: Wednesday, November 17, 2004 10:26 PM Subject: CVS for DOS? Hello, 1. As we all know, it is always recommended to generate a CVS sandbox at the system on which the development should occur. That is, if we use Windows, use a Windows client, if we use some kind of Unix, use that client. 2. Furthermore, it is considered bad practice to share sandboxes between systems. Now, I have the problem that I need access from a MS-DOS machine to a remote CVS repository. Anywhere, using google, I did not find any version of CVS for DOS (nor did I find ssh, which would be needed for remote access, but this is another story). Currently, I checkout the sandbox in Windows and move it to DOS via Windows shares. It works, but it surely violates 1. and 2. Of courses, Windows line endings and DOS line endings are the same, so 1. might not be that big a problem, but 2. is one. Furthermore, it is very error prone. So, I ask you if you know of any DOS version of CVS (binary), or how I could build that? If anyone knows how to find a working ssh client, this would help me, too. BTW: Now, it is no option to not use DOS at all, but to use the DOS box of Windows, or some emulators on Linux. The compiler environment uses some custom DOS extender, which is not compatible with all DOS boxes I know of. Running a real DOS on VMWare is an option, and this is in fact what I am doing. Any input is highly appreciated, Spiro. -- Spiro R. Trikaliotis http://www.trikaliotis.net/ http://www.viceteam.org/ ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
Re: Monitoring tool
Can anyone recomend a good moitoring tool for a CVS server? We basically want to get mails when ever a commit is made, with the diff and versioning information. We also want mails when tags are commited, branches are made, etc. How about cvs itself? https://www.cvshome.org/docs/manual/cvs-1.11.18/cvs_18.html#SEC173 The taginfo section is also somewhere near... Any good tool out there? ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
Re: Q on CVS nstall/setup on windows...
Can someone please point me to any docuentation on what is needed to setup and configure CVS client on a windows workstation. Assumptions, registry keys (please no!), paths, ENV VARs, etc that CVS.EXE uses/needs, etc. I don't think CVS requires anything at all by itself. You'll need a $HOME dir for most command-line ssh clients, though. Have you tried just running the cvs.exe? I haven't used cvs on my windows machine recently, but I don't remember having to setup anything (other than my ssh-client). HTH, Arno np: Jeff Wayne - The Red Weed ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
Re: rtag of revision
Hi [...] /base/submodule/code.c That wouldn't be $SANDBOX/base/submodule/code.c, would it? (or $CVSROOT, for that matter) This file's HEAD is currently at revision 1.18. I want to apply the tag SHIPPED_2.0 to revision 1.15. I am attempting the command: cvs -n -t rtag -f -r 1.15 SHIPPED_2.0 /base/submodule/code.c But I get back: cvs rtag: notice: main loop with CVSROOT=:pserver:[EMAIL PROTECTED]:/usr/local/repository cvs server: WARNING: global `-l' option ignored. S- my_module (/base/submodule/code.c, Tagging, , SHIPPED_2.0) cvs [rtag aborted]: Absolute module reference invalid: `/base/submodule/code.c' S- Lock_Cleanup() Module references are always with respect to the repository directory. You supplied an absolute path. Try skipping the leading '/' HTH, Arno ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
Re: How to handle cariage retrun ?
Hi, Hi [...] Now I wanted to upload a text file (zipped on Windows) via ftp and then unzip and commit it directly on the server (using telnet). why? The problem is that it has changed the cariage return. Any Windows client updating this file gets now only /n cariage retruns, insted of /r/n. Could someone propose a solution to update a file with crlf on a linux server without changing the crlf for the windows clients ? don't use crlf on linux I also found this in the cvs help. [Does it mean that I should have used a text file with only /n cariage return to make my commit on linux ?]: yes you should. There are a number of different options you can try: - send the file (unzipped) though ftp ASCII mode - use the dos2unix command after unzipping - don't use ftp, let cvs handle the file transfer - use the dos2unix command directly on the repository file (I didn't say that) Thanks, Didier HTH, Arno ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
Re: Problem uploading files in cvs repository to ftp server
Unfortunately, I never used loginfo or commitinfo triggers myself, so I can't really provide you with a working example. You can do this without modifying the perl script, provided you know your way around in a linux shell. The perl script is from sourceforge (http://sourceforge.net/projects/ftpsync/). I don't know how to write a Perl script that checks out a local copy. Me neither. I guess perl has a spawn()-like mechanism for this. Instead of executing the perl script directly, execute a bash script that does the following: - cvs co -d /tmp/myproject project_name - run ftpsync.pl from /tmp/myproject - (rm /tmp/myproject) if you prefer disk space to speed I use WinCVS to get a checkout out local copy on my windows PC. The CVS repository is on a linux server. You mentioned checkout a local copy; is the local copy at the linux server or at the windows PC? Note that the above script runs on the server: it is a checked-out copy on the server, so local in this case means on the same machine where the repository is. HTH, Arno Anand Can you modify the perl script to first checkout a local copy and then upload the checked-out files? The local (server) copy can afterwards be removed, of course. HTH, Arno - Original Message - From: Anand Graves [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Sunday, September 05, 2004 9:01 PM Subject: Problem uploading files in cvs repository to ftp server I want to upload a file to a ftp server whenever a file is commited. The file loginfo in the direcotry CVSROOT can make this possible. I added a line on the left a regular expression (for a certain directory) and on the right the command to be executed. The command is a perl script that uploads the file(s) to a ftp server. When I looked on the ftp server I noticed that I saw only files with ,v at the end. These are all RCS files, but I only want to upload checked out files (without the ,v). Does anyone know how to accomplish this? Thanks, Anand ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
Re: CVS on SSH
Hi, Hi How do I enable CVS on SSH? Enable SSH And the long answer: The only thing you need to use cvs over ssh is to enable an ssh daemon on the cvs server (make sure ssh users can execute the cvs executable), and use the :ext: connection method on your clients. If you use the command line client, make sure you set CVS_RSH to your ssh executable (probably ssh, though I've used it with plink also). HTH, Arno ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
Re: Problem uploading files in cvs repository to ftp server
Can you modify the perl script to first checkout a local copy and then upload the checked-out files? The local (server) copy can afterwards be removed, of course. HTH, Arno - Original Message - From: Anand Graves [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Sunday, September 05, 2004 9:01 PM Subject: Problem uploading files in cvs repository to ftp server I want to upload a file to a ftp server whenever a file is commited. The file loginfo in the direcotry CVSROOT can make this possible. I added a line on the left a regular expression (for a certain directory) and on the right the command to be executed. The command is a perl script that uploads the file(s) to a ftp server. When I looked on the ftp server I noticed that I saw only files with ,v at the end. These are all RCS files, but I only want to upload checked out files (without the ,v). Does anyone know how to accomplish this? Thanks, Anand ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
Re: Question about RCS files
Hi. I am a CVS newbie and I would like to do/have the following: On the clients I work with: CVSROOT=:ext:[EMAIL PROTECTED]:/var/lib/cvs; LOCAL=/SOMEWHERE/sv; CVS update is done by: cd /SOMEWHERE/sv; cvs -d $CVSROOT update -dP; CVS commit is done by: cd /SOMEWHERE/sv; cvs -d $CVSROOT commit; cvs -d $CVSROOT makes little sense... cvs uses $CVSROOT by default I describe all this because I dunno if you might need this information to answer me the following question: I thought that the CVS-Tree LOCAL and on the SERVER are IDENTICAL (after I did an update). But on the server the files end with ,v and have all the comments and version stuff inside. I now know that these files are the rcs files (the backbone of the cvs?). more or less. Never touch the files in $CVSROOT But I need an exact copy of the version a CLIENT has in its /SOMEWHERE/sv dir on the SERVER (so without the rcs stuff). How can I achieve this? Do I have to to do an cvs-checkout on the server and cvs-update everytime a client did commit something? Or can I say to the server somehow to keep automatically the rcs stuff seperate in one dir and an client-like-copy of the cvs-repository in another dir? See keeping a checked-out copy https://www.cvshome.org/docs/manual/cvs-1.11.17/cvs_18.html#SEC175 Arno ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
Re: [OT ?] *WIN*CVS setup questions
You might want to try the *WIN*cvs mailing list [EMAIL PROTECTED] HTH - Original Message - From: New Bie 123 [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Monday, August 23, 2004 2:56 PM Subject: Re: [OT ?] *WIN*CVS setup questions Hi surprisingly, command line like : --- cvs -d:pserver:[EMAIL PROTECTED]:/cvsroot/freedos login cvs -z3 -d:pserver:[EMAIL PROTECTED]:/cvsroot/freedos co modulename work !! But ... me being that Windows user not liking command line, set up *Win* CVS. For some reason, I'm still unable to get Win CVS to checkout :-(( So ~ - At present, Login worked. Thanks ! - the other question remains So my questions for **Win CVS** set up are ^^ Do I include the module name portion while setting the browse to directory using the binocular button ? ~~ If cd /home/abc/mycvs_code is the general directory where I have many sub directories, like /freedos, /freesomethingelse etc. etc., which one do I browse to - to cd/home/abc/mycvs_code/freedos or **just** cd /home/abc/mycvs_code - and What is the module name path on server when I click on Remote - checkout module in Win CVS Many thanks NB -Original Message- From: Gaurav Vaish [mailto:[EMAIL PROTECTED] Sent: Monday, August 23, 2004 4:48 PM To: New Bie 123 Cc: [EMAIL PROTECTED] Subject: Re: [OT ?] *WIN*CVS setup questions You must login before checking out. Step 0. Set all variable, specifically, CVSROOT Step 1. make a directory, say, /home/me/projects/FreeDos Step 2. execute cvs login. When asked for password, simply press enter. Step 3. execute cvs co freedos Note that I've capitalized FreeDos just to demonstrate that FreeDos is just a name and may or may not match the module name. When you execute step 3, you will get something like: /home/me/projects/FreeDos/freedos/... all files HTH Happy Hacking, Gaurav Vaish http://gallery.mastergaurav.net -- -- New Bie 123 [EMAIL PROTECTED] ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs ___ Info-cvs mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/info-cvs
Re: Moving a CVSNT Repository to Linux.
FWIW - Original Message - From: Jim.Hyslop [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Wednesday, April 14, 2004 3:38 PM Subject: RE: Moving a CVSNT Repository to Linux. I believe Windows 95 Explorer _may_ have arbitrarily _displayed_ the name in a canonical format (first letter uppercase, followed by all lower-case letters IIRC) but I believe the case of the name was always preserved (a 'dir' command at the command prompt would indicate the correct case). Windows versions 9x had an option to prettify file names that were in 8.3 format. Files in 8.3 format were all caps, and explorer would display them as you RC. There was an option to switch off prettifying (allow filenames in all capitals). All versions should however be case-preserving. Arno Schuring ___ Info-cvs mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/info-cvs
Re: How to compose a new module out of dirs in other modules !
The use of ampersand modules is half the solution. The other half is http://www.cvshome.org/docs/manual/cvs-1.11.14/cvs_18.html#SEC162 (or at least that's how I solved it. If there's a nicer/cleaner way, please do tell) You can create aliases for your other dirs, and add a -d flag in the modules file. ModuleNEW newdir1 newdir2 newdir1 -d Test/dir11 moduleSrc/dir1/dir11 etc. One (slightly ugly, though perfectly as-designed) added feature is that cvs allows you to checkout newdir1 also as a separate module. If you're running a cvs server for multiple users, you might want to mark the extra modules with a '_' for example, and ask your users not to check out modules starting with '_' - though there's no harm when they do. hth, Arno np: The Police - Message In A Bottle - Original Message - From: Peter Biechele [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Tuesday, March 09, 2004 10:49 AM Subject: How to compose a new module out of dirs in other modules ! I have the following problem: I have a project which contains many dirs and subdirs. Now I want to compose a new module containing some arbitrary subdirs in different dir levels to a new module. BUT the dirs in the new module should be also in different levels. E.g. (I checkout moduleSrc and see) moduleSrc/dir1 moduleSrc/dir2 moduleSrc/dir1/dir11 I want to have: (when I checkout moduleNEW) moduleNEW/Test/dir11 (ampersand module of moduleSrc/dir1/dir11) moduleNEW/oneDir/twoDir/threeDir/dir2 (ampersand module of moduleSrc/dir2) How can I accomplish this ?? If i use ampersand modules I can not tell the new path in the new module!! Thank you for any help. Peter Biechele # Dr. Peter Biechele, E-Mail: [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: CVS question
See http://www.cvshome.org/docs/manual/cvs-1.11.10/cvs_18.html#SEC160 Add the following line to your CVSROOT/modules file: PackAPackA PackB Hope this is what you are looking for Arno Schuring - Original Message - From: Sophie Coon [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Thursday, February 05, 2004 2:28 AM Subject: CVS question Hi, I have the following problem. Lets assume that the top level repository contains a directory PackA which contains 2 files: afile1 and afile2. The repository also contains another directory at the same level, PackB which contains 1 file, bfile1. I'd like to know if CVS provides a mechanism that will create the following files: PackA/afile1 PackA/afile2 PackA/PackB/bfile1 when executing cvs co PackA. and PackB/bfile1 when executing cvs co PackB. I'd like to keep PackB independent from PackA under CVS, but have it checked out as a subdir of PackA if checking out PackA. Thanks in advance for any information. Best regards Sophie -- Sophie COON The Scripps Research Institute Research Programmer III Molecular Graphics Laboratory 10550 North Torrey Pines Road Phone: (858) 784-9556La Jolla, CA 92037 Fax : (858) 784-2860 ___ 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