Git, invented in 2005. Programmers on 2004:
Git, invented in 2005. Programmers on 2004:
Git, invented in 2005. Programmers on 2004:
Git wasn't the first version control software. I remember using sccs back in 1991 and apparently it was written all the way back in 1972 https://en.wikipedia.org/wiki/Source_Code_Control_System
Don't trust anyone who can't spell 'oops'.
Maybe he was cursing the god of dev ops
Just a heads up, it you don't know how to use cli git in 2025 you're probably a shit developer. There are undoubtedly exceptions, but I would argue not knowing version control intimately makes you a bad developer.
Why learn an archaic and honestly horrifying command line interface, possibly the worst CLI ever made in the history of computing...when nice normal graphical interfaces work better, have discoverability, have troubleshooting tools, and don't require memorizing scripture?
Mate... Theres maybe like 5 "git + singleword" commands that cover 99.999% of all of your uses of git. Its really not hard.
Most cli stuff is a lot easier than programming. If you can't use cli then by definition you're a shit programmer.
Of course if you simply don't want to use cli that's a different matter.
Because they are universally incapable of coming anywhere close to the full power of git.
I can't tell you how many times I've had GUI-only people ask me to unfuck their repo (fortunately not at my current job, because everyone uses the CLI and actually knows what they're doing). It's an impedance to actually learning the tool.
Ultimately any GUI is a poor, leaky abstraction over git that restricts many of the things you can do for little actual benefit.
As someone using git for the last 10 years by now: you're wrong. No UI has managed to give me access to all the fuckery I often do very quickly on the command line. I was honestly surprised to see IntelliJ nowadays supports an interactive rebase, but reflog, which should be a basic git feature, is still not widely supported in most IDEs in 2025. Or adding, resetting or checking out files with regex. Setting up and modifying lfs. And these are all basic features, good luck doing something like using branch~n syntax for some of the operations etc.
Git UI is shit and will be for a long time.
The fact that you don't already know why and are dependent on GUI tools that you don't fully understand is the reason that you're probably not a very good developer.
Git is incredibly powerful. Knowing why and how is infinitely valuable. Nothing about git cli is archaic or even particularly difficult to understand. Also the man page is very excellent.
Fake developer doesn't use version control. Big surprise.
I need to put a SaaS together called vibe VCS
Acts like SVN and CVS didn't exist
Also like Reddit did
Don't worry, I'm sure Cursor will be able to clobber your git history and force push to master any day now
we just need a little more AI
You know, none of the “AI is dangerous” movies thought of the fact that AI would be violently shoved into all products by humans. Usually it’s like a secret military or corporate thing that gets access to the internet and goes rogue.
In reality, it’s fancy text prediction that has been exclusively shoved into as much of the internet as possible.
I just want to pause a moment to wish a "fuck you" to the guy who named an AI model "Cursor" as if that's a useful name. It's like they're expecting accidental google searches to be a major source of recruitment.
It's not an AI model, it's an IDE
My comment stands
It's a scary amount of projects these days managed by a bunch of ZIP files:
Inspired by a small collaboration project from a few years ago.
I did that with documents in my Uni years.
By the end, I was using ISO timestamps.
If we're talking actual builds then zip files are perfectly fine as long as the revs make chronological sense.
I'm not. I'm talking about in companies where dev A wants dev B to do some work, but they don't use git or any kind of source control, so you email over a cursed ZIP file, then dev B does the work and sends it back with a different name. It's a highly cursed situation.
Why did the porn star become a network admin after retiring?
She was already an expert in load balancing
Just save your prompts and vibes in a Google doc dude
Good thing it's deterministic, oh wait 😃
You could literally just save a copy to your desktop before you're going to do something sensitive.
That's why I take a screenshot of my desktop before something stupid just in case.
Or use VCS like a normal dev
"Developer"
"my" 4 months of "work"
Those are the ones easily replaced by AI. 99% of stuff "they" did was done by AI anyway!
Forget git. Sending zip files into discord once in a while it the way to go.
svn was invented in 2000
CVS was invented in 1986
SCCS is from 1972, you young whippersnappers
Now Target owns them, I think.
I landed in the middle. SCCS was too old, CVS was too new.
https://www.gnu.org/software/rcs/
But, back then, I had also been forced to use CMVC.
https://en.m.wikipedia.org/wiki/IBM_Configuration_Management_Version_Control
At least they were humble and didn't blame it entirely on Cursor... they also blamed Claude.
The first version control system I ever used was CVS and it was first released in 1986 so it was already old and well established when I first came to use it.
Anyone in these past forty years not using a version control system to keep track of their source code have only themselves to blame.
CVS was, for the longest time, the only player in the FLOSS world. It was bad, but so were commercial offerings, and it was better than RCS.
It's been completely supplanted by SVN, specifically written to be CVS but not broken, which is about exactly as old as git. If you find yourself using git lfs, you might want to have a look at SVN.
Somewhat ironically RCS is still maintained, last patch a mere 19 months ago to this... CVS repo. Dammit I did say "completely supplanted" already didn't I. Didn't consider the sheer pig-headedness of the openbsd devs.
"We've always done things this way, we ain't changing!" - some folks in the Foss community, like those RCS maintainers
We still use RCS at work. For config files for our network monitoring. Works fine still.
which is about exactly as old as git.
Wdym by that?
And Claude, off course.
My first one was Visual Source Safe.
I will never go back to it for any amount of money.
You know, CVS wasn't really that bad, just primitive and outdated.
Before that, it was RCS, released in '82.
Or gnu arch
Luckily I'm young enough that I never had to use RCS.
It's actually reassuring to see that despite all warnings and doomsayers there will still be opportunities for programmers capable of solving problems using natural intelligence.
If anything it feels like we're the doomsayers trying to warn people that their AI bullshit won't ever work and they're just not listening as they lay off the masses and push insecure and faulty code.
And then years from now when this all comes to a head, they’re gonna hire some poor schmucks to fix that crappy code
this guy would have force pushed onto main about 10 mins after this if he did have git
And then lost the reflog by rm -rf
ing the project and cloning it again.
God bless DCVS.
You need a USB C “Power Ctrl+Z” key. Unlike the regular Ctrl+Z key one of these bad boys is capable of reversing edits across system reboots until as far back as when you originally plugged it in.
Sounds to me like a glorified keylogger 😭
i kinda miss tortoisesvn
What about tortoisegit
🤮
But actually...
It is good for some things. It even got support for staging files recently.
Ah yes, the elusive AI "programmers".
The vibes were off.
Yeah this what you get when you code based on vibes.
just press Ctrl + Z several times! /s
if this is real, that's the kind of people who should be worried about being replaced by an ai
it's also Claude
lmao
Was playing around with it. It's neat tech. It's interesting all the side projects I can spin up now. It absolutely cannot replace an engineer with a brain.
I've caught so many little things I've had to fix, change. It's an amazing way to kick off a project, but I can't ever trust blindly what it's doing. It can get the first 80% of a small project off the ground, and then you're going to spend 7x as long on that last 20% prompt engineering it to get it right. At which point I'm usually like "I could have just done it by now".
I see kids now blindly trusting what it's doing, and man are they going to fall face first in the corporate world. I honestly see a place for vibe coding in the corporate world. However I also see you still needing a brain to stitch it all together too.
Yeah, a coworker (also a trainee) spent 2 days trying to debug some C# MVC thing. It took me around 5 mins, from having last seen C# code 7 years ago, to realizing that the quotes were part of the literal string and needed to be checked too.
Well he did literally everything with the internal ChatGPT instance (or so a coworker said, I don't know which model actually runs there). I asked if he wrote JS code, he said no. Well even though there was JS in the cshtml file, he technically didn't lie, as he didn't write it.
subversion. those were the days...
Was my first experience with source control, a bunch of Gary's Mod mods were distributed that way, think I recall wiretool doing that, spacebuild was for sure, predated my work use by like 5ish years.
I didn't hate it but definitely prefer git, but I'll take literally anything over not having it,
Haha I literally thought of this exactly, Garry's Mod. Why do I need this tortoise crap, just gimme a zip. Ah, summer child.
We still use it in my job.
Pls help.
~/Dev/Project/file.ext~2025-03-20-Backup-6
~/Dev/Project/file.ext-test-final5
Ahh yes, programming by vibe. The vibe is always dumbass. Just steal code that has already been explained to you like everyone else.
already been explained to you
This step is optional
git push origin master # moron
Before Git, we used SVN (Subversion), and CVS before that. Microsoft shops used TFS or whatever it's called now (or was called in the past)
Wasn’t it Visual SourceSafe or something like that?
God, what a revolution it was when subversion came along and we didn’t have to take turns checking out a file to have exclusive write access.
Visual SourceSafe
Yes! That's the one I was struggling to remember the name of. My previous employer started on Visual SourceSafe in the 90s and migrated to Team Foundation Server (TFS) in the 2000s. There were still remnants of SourceSafe when I worked there (2010 to 2013).
I remember TFS had locks for binary files. There was one time we had to figure out how to remove locks held by an ex-employee - they were doing a big branch merge when they left the company, and left all the files locked. It didn't automatically drop the locks when their account was deleted.
They had a bunch of VB6 COM components last modified in 1999 that I'm 80% sure are still in prod today. It was still working and Microsoft were still supporting VB6 and Classic ASP, so there wasn't a big rush to rewrite it.
Oh god, thanks for that fucking PTSD bomb
Yeah VSS was the predecessor to TFS, and now TFS is called Azure DevOps... whatever the fuck that means, Microsoft needs to get it together with product naming. Anyway TFS sucks major rotten ass. I have my problems with git - namely user friendliness - but TortoiseGit has put all those troubles to rest.
Nothing like that can fix TFS.
I thought mercurial was older than git, but apparently it's 12 days younger.
A place I worked at did it by duplicating and modifying a function, then commenting out the existing one. The dev would leave their name and date each time, because they never deleted the old commented out functions of course, history is important.
They'd also copy the source tree around on burnt CDs, so good luck finding out who had the latest copy at any one point (Hint: It was always the lead dev, because they wouldn't share their code, so "merging to main" involved giving them a copy of your source tree on a burnt disk)
My first SWE job out of college in 2019 they were still using SVN because none of the seniors could be bothered to learn how to use git.
The “well this is how we’ve always done it” attitude had a death grip on that place
For what it's worth, SVN is a much simpler object model compared to Git, which makes it easier to understand.
It's centralized rather than distributed like Git is, which has some disadvantages. Most operations require access to the server, as opposed to Git where you usually have a copy of the entire repo and can work offline. Git users can clone the repo from other users rather than relying on a centralized server.
On the other hand, a centralized server also simplifies some things. For example, instead of commit hashes, SVN has revision numbers, which are natural numbers that start at 1 and are incremented for every commit. A lot of software that used SVN used to use the revision number as part of the version or build number.
Git is definitely the source control system to choose today, but SVN can still have its place.
SVN is fine for most corporate workflows. Your project is probably not anything like Linux.
Oh yeah, I remember using tortoiseCVS briefly.
Mercurial and Bazaar also showed up at around the same time as git, I think all spurred by BitKeeper ending their free licenses for Linux kernel devs.
An interesting shot to the foot, that one.
BitKeeper was a proprietary version control system that somehow (and with a lot of controversy) ended up being adopted by a big chunk of the Linux kernel developers, while others were adamant against it.
In any case, they provided free licenses to Linux devs, with some feature restrictions (including not being able to see full version history) only available for premium clients, while Devs who worked on open source competing systems were even barred from buying a licence.
When someone started to work on a client that allowed access to these locked away features, they revoked the free licenses, and a host of solutions started being developed immediately. Linus Thorvalds himself started work on git, and that eventually got adopted by the whole Linux ecosystem and, nowadays, the world.
As for BitKeeper, it's been dead for years now.
20+ years on and I still have some unresolved Clearcase trauma.
eh heheh we still use clearcae hehe … heh
TFS actually moved its core version control to Git in 2013 and was later was rebranded as Azure DevOps a few years ago
Thank god, we STILL use TFS at work, and its core version control model is reeeeeally fucking awful.