It's easy to forget that we are living in a golden age of version control systems. The market is rife with many fairly decent commercial systems and some of the best, state-of-the-art systems are completely free.
Sorry to not share your angelism. git seems worshipped here. I never used it but I used cvs and mercurial a lot, and we are very far from what a real,versioning should be: completely transparent. cd dir should propose to update it. save file should commit it and push it in tmp branch.
History of version control - 10 astonishments
71–76 of 76 posts
Re: History of version control - 10 astonishments
#722. Humans can manually keep track of versions of code! (1960s) As everything, to begin with there was no software. “At my first job, we had a Source Control department. When you had your code ready to go, you took your floppy disks to the nice ladies in Source Control, they would take your disks, duly update the library, and build the customer-ready product from the officially reposed source.” (Miles Duke) Balderdash…
You're right that it talks about floppies, so it can't have been.
Enjoying the few more comments the article has generated with memories of those earlier days. Would love to see the earlier astonishments written up more precisely.
Re: History of version control - 10 astonishments
#73Earlier quoted context omitted.
Sorry to not share your angelism. git seems worshipped here. I never used it but I used cvs and mercurial a lot, and we are very far from what a real,versioning should be: completely transparent. cd dir should propose to update it. save file should commit it and push it in tmp branch.
I think you might be letting perfect be the enemy of good. Certainly there's a lot of improvement remaining for version control. Ideally everything (files, database records, etc.) should be versioned automatically, but that shouldn't stop us from appreciating the good state we are in today compared to the dark years when version control for anything was difficult or impossible.
Re: History of version control - 10 astonishments
#74Earlier quoted context omitted.
Misses the absolutely massive Clearcase. In 1999, (and earlier, but I ran into in 1999 at Loudcloud) - if you wanted to support multiple branches and allow merging code into them, it was the only tool that made it easy. Had great (windows) client side environment that gave everyone a "view" into the source, But _man_ was the backend ugly.
ClearCase is certainly popular, but I don't think it ever had a feature that was a big milestone in version control history. Client side software with a view of the source is already covered in the author's point #4, and ClearCase doesn't do this better than the others (quite the contrary, in my experience).
Re: History of version control - 10 astonishments
#75It's easy to forget that we are living in a golden age of version control systems. The market is rife with many fairly decent commercial systems and some of the best, state-of-the-art systems are completely free.
Sorry to not share your angelism. git seems worshipped here. I never used it but I used cvs and mercurial a lot, and we are very far from what a real,versioning should be: completely transparent. cd dir should propose to update it. save file should commit it and push it in tmp branch.
Too much noise/versions is ALSO bad. I'm quite happy with having to tell git every hour or so "this is a version I'd like to go back to"; and continuous zfs snapshots when I want to undo an unplanned delete of the last 20 minutes of work and immediate IDE crash (otherwise, ctrl-z is just as good).
Right tool for the right job.
Re: History of version control - 10 astonishments
#76Earlier quoted context omitted.
I used SourceSafe for the better part of 10 years. The underpinning technology very much resembled RCS. But all-in-all, it was quite serviceable for a 75,000 line C++ project. Just don't try to do branches.
That's a little bit like saying "All-in-all, this car is quite serviceable. Just don't try to use third gear."
Thank goodness we didn't need to do any branching.
So perhaps we can think of RCS as first gear, VS as second gear, CVS/SVN as third gear, and git as fourth gear?