CVS (Concurrent Versions System) is one of many [SCM] packages available in the source development community. It is quite frequently used in the Tcl community because of its use at [SourceForge]; this site includes tutorials that help CVS beginners. Instructions on retrieving the Tcl/Tk source from the SourceForge CVS server are available from for Tcl and for Tk. ---- Here are a few packages written in Tcl and/or Tk that interact with CVS. What: cvsversion Where: Description: Tcl script that recursively searches CVS/Entries files and compares them with a save file. If a different is found, you are asked if you would like to increment the major, minor, or point number of the release, and then stores the new information in a VERSION file. Updated: 09/2000 Contact: What: FastWeb Where: Description: Framework for creating and managing multi-language HTML WWW projects. Depends on Tcl to glue together M4, WEEX, CVS, HTML TIDY, make-type functionality, etc. Updated: 09/2001 Contact: What: Graphical Interface to CVS (Chan) Where: From the contact Description: Software Engineering Class project. Contact: (Tony Chan) What: Graphical Interface to CVS (Marwood) Where: Description: GIC is a Tk interface to the Concurrent Version System, a revision control system. Contact: (David Marwood) What: Makedist Where: Description: A tool to help generate distributions from a source code repository such as CVS, automating as much as possible. V2.0 requires Tcl 8.x . Updated: 11/1998 Contact: (Andreas Kupries) What: RAD/CVS Where: Description: RAD/CVS is an object-oriented, Tcl interface to the Concurrent Versions System (CVS). The RAD/CVS Tcl Interface implements an abstract interface that is not dependent upon CVS and could conceivably be implemented using other underlying implementations (e.g. RCS, SCCS, PVCS). Has a Tk/Tix interface. Available for non-commercial use only. Updated: 07/2000 Contact: (John Goodsen) What: rcsview Where: Description: A Tk viewer for RCS or CVS files. It highlights text according to the version from which it comes. Contact: (Andrew Myers) What: Tcl Developer Studio Where: Description: Environment for Tcl/Tk developers. Provides multi-file editor with syntax indenting, highlighting, find functions, CVS control interface, simple project support, printing fast file navigation. Updated: 07/1999 Contact: ) What: TIDE Where: Description: Commercial Tcl/itcl Integrated Development Environment (IDE) for single users. Lets you manage your projects, navigate the source, and browse your symbols. Supports project management, smart editor aboe to navigate thru project, interfaces to RCS and CVS source repositories, interface to Tuba debugger, diff/merge against repository, cross reference for symbols, about to search against projects, symbol browser, byte compiler, lint, and package mechanism. Supports Linux, Solaris, HP-UX, AIX. Version 1.5 is now available. Updated: 05/1999 Contact: (Ing. Hans-Michael Haschek) What: tkCVS Where: (??) Description: tkCVS is a Tk interface to the Concurrent Version System, a revision control system. Supports CVS 1.6 and newer and provides search facilities for the modules database, file browser, etc. Requires TkDiff to be installed. Has been tested under Linux v1.2.13/CVS 1.6/Tk 4.0 and SunOS v4.1.3/CVS 1.[2-6]/Tk 4.0. See the Cyclic site for a port of tkCVS to Windows NT. The Rubicon site has a document describing the use of tkCVS for version control. The teleport site contains an unofficial, in development, version of tkCVS 6.1a8. Contact regarding a patched version of tkCvs for Windows. Currently at version 7.0.1 . Updated: 07/2001 Contact: (Del) What: tkdiff Where: Description: TkDiff is a Tk based interface to the Unix diff command which provides highlighting of difference regions, side by side viewing of files, linked scrolling, random access to the difference regions, file merge, and online help. Requires Tk 3.x or 4.x. Also supports SCCS, RCS, and CVS. Built in editor, find facility. A binary version for i386_linux is also available. Version 3.04 (with new interface) is now available. The ede site is the authority location for downloading this application. The moinejf site has a version of tkdiff that does 3 way merges using diff rather than diff3. Updated: 12/1999 Contact: (subscribe tkdiff) (John M. Klassa) What: WinCVS Where: Description: CVS interface for Windows. Reported on comp.lang.tcl to rely on Tcl. Appears to be a C++ application depending on CVS DLLs. Updated: 02/2000 Contact: ---- You can format CVS or RCS log entries into a ChangeLog format using [log2changelog] ---- [[Other approaches: [open "|cvs -d $cvsroot init" RDWR] and talking to cvs along pipes. speaking direct CVS protocol through [socket]. ]] Will this really work? If cvs asks for my password, can I really check for that and send it back down the pipe? Well, yes, you can. If however there is going to be very much interaction, or if the strings being examined are going to be very complex, I ([LV]) would recommend looking at [Expect] as a Tcl extension to make the interaction a bit easier. [Vince]: Can you provide a simple example of a script which will check for a password request and send that back down the pipe? Nothing complex, just, say the equivalent of 'cvs -z5 update -d $cvsroot ChangeLog', type password, and we're done. See [Pipes vs Expect] ---- [Category Acronym]