oreilly.comSafari Books Online.Conferences.


AddThis Social Bookmark Button

Version Control on Mac OS X, Part 3
Pages: 1, 2, 3


MacCVSClientX is a free multithreaded CVS client for Mac OS X, as well as Mac OS (Classic). Unlike Project Builder and BBEdit, MacCVSClientX is not a development or edit environment. It enables you to see file differences, conflicts, administer adds and imports, and manage your project files' revision history.

Click for larger view

Concurrent Versions Librarian

Concurrent Versions Librarian (CVL) is a GUI for CVS, supporting many CVS commands, including commit, update, tag, checkout, import, status, log, and differences and tag inspectors. It uses Apple's FileMerge to resolve merge conflicts and permits you to interact with multiple repositories. CVL also supports integration with ProjectBuilder. If you double-click on a file in the Work Area, CVL will open the file in Project Builder.

You can perform many CVS commands by selecting a file and either right-clicking over the file or selecting the command from the CVL menus.

In addition, you can get information on a file through Tools->Inspector, including a file's status, log information, tags, and differences. For example, to get log information for a file, select the file from the work area and choose Tools->Inspector->Logs.


The last program we will look at is LinCVS. LinCVS is a freely available cross-platform GUI for CVS that runs under Mac OS X, UNIX, and Windows. The program uses the Qt GUI and application tools kit, providing single-source portability across platforms. As with the other programs we've discussed, LinCVS supports most of the CVS commands you need. For Mac OS X users, LinCVS comes as an application you can run from a shell or by double-clicking its icon. To access the remote CVS repository, I used the same trick as we did with Project Builder, where I launched to from a shell with the open command. Next, I created a new profile, entered my CVS information, and checked out the MyPing project.

If you develop cross-platform applications, and you are looking for a good GUI for CVS, LinCVS is definitely worth checking out.

Click for larger view


This concludes our look at version control under Mac OS X using CVS and Project Builder. I hope that this series of articles has convinced you that version control is an important part of any software development project and adding it to your development process is a relatively painless process.

Kevin O'Malley is a long time Macintosh and UNIX developer. His articles have appeared in Dr. Dobb's Journal, IEEE Internet Computing, and The Perl Journal, and he is the author of Programming Mac OS X: A Guide for UNIX Developers.

Return to the Mac DevCenter