cd ~/repos/work-project27 git checkout dev git branch new_feature ### code for a few hours, close laptop, go to sleep, next morning git checkout dev ### code for a few more hours, close laptop go to sleep, next morning ## "oh fuck, I already implemented this in new_feature but differently" git checkout dev git diff new_feature ## "oh no. oh no no no. oh fuck. I can't merge any of this upstream and my history is borked." git clone git@workhub:work/work-project work-project28 cd ~/repos/work-project28Truly a Sisyphus tale
the last one is just immutability, praised in modern JS / TS, albeit at the repo level
I “love” how JavaScript has slowly rediscovered every piece of functional programming wisdom that was developed before 1980.
Kind of, though they honestly just do pretend immutability. Object references are still copied everywhere.
All of javascript is kinda just pretend.
I find you need the whole ecosystem to support immutability to make it work. Every library needs to be based around it. Elixir is about the only modern option that does.
It’s actually a pretty good idea to have a full system snapshot time to time, where the project can compile successfully, for future Virtual Machine use. It’s usually easier to spin a VM than setting up the whole dev environment from scratch.
As one of the maintainers of Mercurial, I take great offense in this meme. ;)
It’s definitely up with Git in my opinion. I much prefer the branching in Mercurial.
It’s certainly very offensive to lump it in the same band as SVN and TFVC.
Given that Git and Mercurial were both created around April 2005 to serve the same purpose by very similar people for the same reason… I’d say it’s fair!
MyProject - Copy v2.bak new NEW (3)/
cp $fic $fic.$(date -Iseconds) git commit -a -m "save at $(date -Iseconds)" # edit $fic git commit -a -m "save at $(date -Iseconds)" git push -fcp?💀
cp is short for create packup
Couldn’t add perforce to the list because someone else was checking it out, I see.
CVS is gonna make a comeback! I tell ya!
I do miss the tags of SVN that would replace certain strings on each commit such as the date, a version number, etc.
And worse than all of those options is Visual Sourcesafe.
Fox Pro!
Shrug
Git is so ready to understand, that I don’t understand how people work without it.
btrfs sub snap -rIsn’t that just git with more steps and harder to share?
It’s equivalent to
cp -r, but:- the copy is read-only
- reuses unchanged files
- easier to share (
btrfs sub send)
Sounds just like git (unless you do some special operations to change the copies)
With properly configured subvolumes, I’ll allow it.
I miss mercurial and it’s far more sensical flags and commands…
It’s still here and very much alive in case you were curious.
The only reason that we stopped using Mercurial is that Microsoft used Git in Azure DevOps. I still wish that they’d supported Mercurial instead of or as well as Git.
I really liked Mercurial too. It was much easier to follow branches to find out if a branch included a commit.
The last one can easily describe Django. Feels like depending on the code base/your mistakes/people you work with can easily turn a normal project into a project where majority of the files is just migration files.
Perforce Helix, here I come!







