[ Last modified by on Feb. 26, 2000, 2:57pm EDT ] [ Edited by Jaime Kikpole and Greg Ross ] How to gain access to TWIG's CVS Server: ---------------------------------------- For more information about CVS in general, please visit www.cyclic.com. Currently there are several CVS tree's for twig: twig - The TWIG 1.0 development tree twig2 - The TWIG 2.0 development tree There are also several aliases for these: twig1 - alias for twig twig-devel - alias for twig2 (may change as new versions are released) twig-current - alias for twig2 (may change as new versions are released) There are two access methods for these tree's, either anonymous access (read only) or user based access. Anonymous username: anonymous Anonymous password: <blank> If you wish to contribute to TWIG's development you will need a username to access the CVS tree. CVS accounts will only be given to those individuals who have contributed to the twig-devel's mailing list and have shown the core developers that they share the common vision of the developers. The rest of this document will take you through the basic step of using CVS on a unix system. CVS does not require unix and if you are using another platform please go to www.cyclic.com for more information about using CVS. This document explains, in brief, how to use the CVS server for TWIG. It assumes that you have basic Unix skills and have access to a UNIX shell. All examples will have an example shell prompt of "$ " and will be only for the TWIG CVS server. IMPORTANT: All example commands are executed from the same directory! This is especially important when you use the update and commit commands. Set Up Your CVS Path: --------------------- To set up your shell account to run CVS more easily, make an environment variable called CVSROOT that is set to: :pserver:anonymous@cvs.twig.screwdriver.net:/usr/local/devel If you are using bash, the command is: export CVSROOT=:pserver:anonymous@cvs.twig.screwdriver.net:/usr/local/devel For the specifics of what command to place in what file, see your shell's man and info pages. If you can not find the directions, or don't want to make CVS easier to use, simply add "-d :pserver:anonymous@cvs.twig.screwdriver.net:/usr/local/devel" after the "cvs" in each of the following examples. If you have been assigned an account, replace all references to "anonymous" with your account's name. Login To The CVS Server: ------------------------ $ cvs login After that command, it will ask for a password. Simply press return if you are using the anonymous account. If you have been assigned an account, use that account's password. This command creates the file "~/.cvspass". You should not try to edit this file. No "logout" command is necessary, as CVS does not leave open network connections. Grab The Latest Source Code: ---------------------------- $ cvs checkout twig2 This creates the directories "CVS" and "twig2" in your current directory. It might be helpful to make sure that you cd into a directory that your web server serves, first. Just make sure that this command does not over-write your public copy of TWIG. If you follow this suggestion, you'll be able to test your changes to TWIG by serving them through your web server. At this point you can edit any file in the twig directory. Do not modify the contents of the CVS directory. There are no time limits on your working copy of TWIG. When you are ready to send your changes back to the CVS server (so that other people can see them), you can continue to the next section. Update Your Copy With The Changes Since You Began: -------------------------------------------------- Go back to the directory that you were in when you preformed the "checkout" command. This is *very* important. Then do this: $ cvs update twig2 CVS will prompt you for assistance if it can not resolve your new changes with the changes that other people have sent in while you were working on your copy of TWIG. Chances are that you'll seldom need to do this. Send In Your Changes: --------------------- This part requires that you have a login other than "anonymous". If you don't, you might want to use the "diff -c" command (see "man diff") and send a patch file to the twig-devel@screwdriver.net mailing list, instead. IMPORTANT: You *must* execute this command from the directory which you originally used the "checkout" command! $ ls CHANGELOG config COPYING features CREDITS goto.php3 CVS images INSTALL index.php3 README misc README.pgsql test.php3 Setup-Apache-PHP-IMAP-TWIG.txt twig-install TODO twig.table.mysql attachment.php3 twig.table.pgsql $ cd .. $ ls CVS twig2 $ cvs commit -m "Some aesthetic changes and fixed a bug on sending mail" twig2 Replace the words in the quotation marks with a brief description of what you changed. CVS will then send your changes back to the server and make all of the appropriate entries in all of the appropriate CVS log files. This includes a certain amount of revision control, too. (If you don't know what revision control is, don't worry about it. CVS will handle it automatically.) You're Done! Now Bask In The Warm-Fuzzy Glow Of Contributing To TWIG! :) Review: ------- Here is a quick review of the commands that you will need to enter. Note that it assumes that you are using the bash shell and have not configured your ~/.bash_profile file. Change the first line appropriately if you do not use bash. Omit it if you've added that line to your ~/.bash_profile file. $ export CVSROOT=:pserver:anonymous@cvs.twig.screwdriver.net:/usr/local/devel $ cvs login [answer questions] $ cvs checkout twig2 [modify the files in the new twig directory] $ cvs update twig2 $ cvs commit -m "Blah and Blah were changed. Blah was fixed." twig2 Further Information: -------------------- For read-only web access to some CVS utilities, visit "http://cvs.cdcsd.k12.ny.us/". For more information about this document, send email to Jaime at jkikpole@cdcsd.k12.ny.us. For more information about TWIG, read the twig@screwdriver.net mailing list. Subscribe by sending email to twig-subscribe@screwdriver.net. For more information about TWIG's development or how to contribute to TWIG's development, see the twig-devel@screwdriver.net mailing list. Subscribe by sending email to twig-devel-subscribe@screwdriver.net.