I've had that kind of reaction - on rebases also - and most times it was in fact a code smell pointing to a case of spaghetti code.
If you get to the point that you fear upstream merges/rebases into your WIP, stop for a second and ask yourself if maybe that might be an issue with too much interpendencies inside the code itself.
Code should be as close to an directed acrylic graph as possible. (doesn't count, I was not speaking of git! :b )
I’ve said both subversion was better, and worse before for sure. PTSD is making it hard to remember what I’ve said when trying to remove a PSD of mpeg you accidentally committed in the first commit and just noticed as you cloned the repo home and it was 2gb for a 3 page website.
Which makes a new commit. The old commit before the rebase is still there until it's garbage collected. Editing a commit in any way changes its hash, turning it into a new commit.
Git isn't even that old. It was first publicly released in 2005. Unless you're literally Linus Torvalds, it's impossible to have used it that long. And I assume Linus does have a pretty good idea of how it works.
I get more than half the spaces, all the negative ones, but can't quite make a bingo without the center, which is the kind of pro-giving a shit about git nonsense I'd never utter.
My friend and I are looking to make a game and the general consensus has been that perforce is still better than git LFS, so we're setting up a perforce server. What is it about SVN and perforce that you miss? I've only ever used git professionally for VCS so I'm finding perforce's always-online and exclusive-checkouts model just very strange (though I understand the need for it when working with binary files).
Perforce is great for dealing with media files, artists can actually use it without producing 500 variants of -new-old-2022-final-dontuse-revised-1.1-2023 filenames (I AM NOT JOKING.), and it doesn't slow down with a lot of media like git does (which has to check out the entire history). Since usually only one artist touches a file at a time, locking doesn't slow them down.
Subversion's kind of the same for devs. There's a single source of truth, merging and branching is a lot easier, but it's less possessive about files. You can do media in it, better than git, but not as nicely as p4. I have seen the -new-old filenames end up in svn, but if you delete a file and commit, it goes away.
I stand by my opinion that git should be the what VCS software uses internally and is built on. It's an API for VCS developers to use. And repon admins.
Thev actual VCS should have it's own API and CLI that is intuitive and shouldn't require understanding the underlying data structure.