I've been reacquainting myself with classic Mac OS programming (e.g. the Toolbox, MacsBug, THINK Pascal/C, etc.) and became curious how software engineering best practices were ...practiced... using the platform's tools of the day.

Specifically, I've been looking into source code management: what tools did classic Mac OS programmers use for source control?

My beard is grey enough to have personally worked with eight or nine different SCM tools, but all of them have been for DOS/Windows, *NIX, and "big(-ish) iron" environments. My Google-Fu is apparently weak in this area, as the only thing I've been able to find being "discussed" "widely" is MPW's Projector and SourceServer tools. Was that the standard? Were there other options in common use?

  • 2
    I would have suspected they initially used rcs or sccs but I have no evidence to support that speculation. Dec 3 '20 at 8:12
  • 2
    @BrianTompsett-汤莱恩It's an interesting question because IIRC Classic MacOS didn't have a command line. rcs and sccs would have been tricky to use on it.
    – JeremyP
    Dec 3 '20 at 10:06
  • 2
    You can, of course, do software development without "source code management tools" -- I did for over a dozen years. The tools only become vital for programming in the large. Dec 3 '20 at 12:51
  • 1
    Returning several hours later: I did all my Mac classic development by cross compilation, hence using nix tools. I even ported compilers to it for fun... but whether anyone else did native development I could not say... Dec 3 '20 at 17:58
  • 2
    I had a friend who did early Mac programming for a living. Had a shelf of the hardbound Mac SDK documentation I coveted (as a Windows programmer we didn't have that). His SCM was called "back up early and often" to floppy.
    – davidbak
    Dec 3 '20 at 18:00

I had a previous employment at a company doing software synthesizers in C++ on Mac OS 9. We were using Microsoft Visual SourceSafe for Mac OS, of all things, for SCM.

(Not sure there was a SourceSafe server for Mac OS, I think ours was running off a Windows NT machine.)

  • 3
    There wasn't much of a SourceSafe server for Windows, either. SourceSafe worked primarily using collaborative file access on Windows shared folders (SMB shares). SourceSafe itself was originally made by a company called One Tree Software, and it was available on several platforms -- including the Macintosh -- before Microsoft took over.
    – Nimloth
    Dec 3 '20 at 17:52

During the late 1990s, I was the Mac port maintainer for a multi-platform open source project. I edited and compiled the code using CodeWarrior, then used a standalone Classic application called MacCVS to upload to our project's CVS server (on someone's work Unix system). Its icon was an orange fish. According to the link, the program works with any Mac System 7.5.3 or later with internet access. The program was later ported to MacOS X. It worked great! Sadly, it is not on the Info-Mac or UMich archives.

Looking back at my old machine, apparently CodeWarrior also had plugins that could be used directly in the IDE for several different version control systems: Microsoft SourceSafe, Clearcase, and CVS (the CWCVS plugin). I never used the first two, and MacCVS was superior to the CWCVS plugin.

CVS was directly available to the maintainers of Unix, VMS, and Windows ports, so they had no problem using native tools. The approaches for the Amiga, Atari, and DOS ports varied. Some people copied files to and then used CVS from their own work computer; some did the same with an account on our CVS server; some merely e-mailed the changes to the development team.

  • Interesting! Thank you for the answer. If I may, what was the project you were maintaining? Dec 5 '20 at 0:54

You can look at early Mozilla releases which targeted classic MacOS. The code contained various CVS directories.

  • 2
    This could do with a little re-wording to make it clearer (as it is, it's sort of a tangential comment that contains enough information for somebody else to deduce an answer), but it does answer the question, and provides useful information to boot.
    – wizzwizz4
    Dec 3 '20 at 22:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.