Skip to main content

Reading an article and it casually mentions OpenBSD still uses CVS as its SCM. Yep! Wow! BUt it does have a GitHub mirror. #programming #unix

Wow...I forgot about CVS... I can't say much, still using SVN at work. I know it well and it works for what we need and haven't had time to dig into GIT to know it as well as I know SVN and for production stuff, I really want to know the system well. I've learned a bit of GIT... just want to know it better.

@TDB Gryffyn I've never used CVS in any appreciable capacity so the few times I had to for a customer project it was very cumbersome. My first SCM was Perforce so when breaking out on my own and couldn't afford the $1000s for licenses I used SVN for some time and it worked well. We migrated to Mercurial for a bit but once I started using Git with a central server (Gitlab) though it has been the only thing I use. The big advantage to the distributed SCMs for me is I can use it offline from scratch when traveling or on diminished internet connections.

Yeah, I appreciate all the good stuff in git... I just want to know if I push something to production, that worked fine in dev and staging, and it DOESN'T work in production.. how do I roll it back easily.. and also how to resolve conflicts better. :) I do like the "everything is a repo" versus "there's one central repo" mentality. My only real experience with CVS is an old job I worked at where we'd edit on the dev server and someone had set up a web interface to help automate CVS commits. I've worked adjacent to Perforce and Mercurial but never used them myself.

@TDB Gryffyn yes knowing how to do rollbacks is very important. I will say that the git branch/merge abilities makes me work in branches far more liberally which allows for more isolation of code before the merge back to the trunk for real. Mercurial allowed that to some extent too but there were some rough edges that prevented implementing git flow the way we wanted to. I can't recall what they were at this point though :(.

@Matto F Never tried that one. You use it a lot?

Nah, SCCS beats RCS!

Seriously though, projects still using CVS are using it because: a) SVN is and was a horrid option for any use, let alone big projects; and b) because Git still can't really handle huge projects quite as well (e.g. NetBSD in a bare Git repo is nearly 2GB, and with a checkout it's nearly 4.5GB); and c) converting a lot of CVS history (including messy bits that should not have been done they way they were done, but now are deeply embedded in the structural history of the CVS repo) to Git is no easy task (the Git conversion of NetBSD and GCC are still a work in progress, GCC has 171,255 commits at last count, and Net BSD is up over 269,000! (*)); and finally d) using Git in very large projects can be quite disruptive to some workflows, and in a volunteer project this means convincing everyone to make major changes to how they do things, and so without a very strong and respected leader this is like pushing a piece of string up a ramp.

Many projects that did switch version control tools sometimes did so with big compromises to the old r... show more

I quite like that they haven't changed it since it seems to work fine. I don't think git is the best that could be done and looks rather interesting in comparison.

Never heard of it. Looks interesting

@Hank Gyes, I use RCS quite a lot.
It is very useful for things like config files, because you keep the versioning repo locally, in the same directory.

(shameless plug)