There are three clients available specifically for the Macintosh operating system: MacCVS (described earlier in Section A.1), MacCVSClient, and MacCVS Pro.
If you are running Mac OS 9 or earlier, you need to be aware of two issues:
The Macintosh CVS clients for OS 9 and earlier don't have built-in SSH support. You can use SSH by following the tunnel workaround in Section A.1.1.3.
CVS clients in Mac OS 9 and earlier may have line-ending issues, as described in Section A.4.
OS X does not have either of these problems, as it has a built-in SSH client and both OS X and CVS use Unix-style line endings.
MacCVSClient is available for OS X and earlier versions from http://www.heilancoo.net/MacCVSClient/.
The main display of MacCVSClient is a modules window, which provides a hierarchical list of files that includes status information. Output from commands such as diff or log is stored and can be retrieved from this window later in the session, as well as immediately after you run a command. If you switch to another application, then return, MacCVSClient attempts to refresh the cached states and modification times of any open folders.
MacCVSClient supports the pserver and ext (rsh-only) repository-access methods. You can configure the repository path in the Preferences dialog from the Edit menu, shown in Figure A-6. Conflicts and the results of the diff command are color-coded to improve readability.
MacCVS Pro is a graphical client for the Macintosh, available from http://www.maccvs.org/. It has versions for OS X, OS 9, and earlier.
MacCVS Pro supports the Kerberos, pserver, and ext (rsh-only) access methods. The main display is a session window, which contains a hierarchical list of available folders and files. Files are shown with status information. Output from commands such as log and diff is displayed in a separate window. diff output is color-coded.
MacCVS Pro is fully multithreaded, enabling you to run several commands simultaneously. Commands that take time, such as update and commit, have a progress bar. A find lurkers command is a useful tool for locating files that have been left uncommitted.
Figure A-7 shows the MacCVS Pro Preferences dialog in the foreground and the main display window in the background.