"Git is to github what porn is to pornhub"
Programmer Humor
Post funny things about programming here! (Or just rant about your favourite programming language.)
Rules:
- Posts must be relevant to programming, programmers, or computer science.
- No NSFW content.
- Jokes must be in good taste. No hate speech, bigotry, etc.
or you to youtube...
to YouTube, you're youseless if you're yousing youBlock origin.
I almost got a bingo by checking off things I've muttered to myself.
I would've... but mercurial isn't better.
As an aside, stop merging into in-progress private branches.... it makes the absolute worst conflicts.
[rebase needed]
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 )
What's your workflow that merging into other people's WIP is normal? I'm so confused
A merge from upstream once a day, at the beginning of the day.
I'm working on a DevOps setting, and even though we're a small team, we have about two to three changes going through the pipeline a day.
If you keep your fork too long without syncing, it just get more complicated to merge, and more importantly if you need help from the upstream change author they'll have moved on to another subject and the change won't be as fresh in their mind as if you had merged the day after they pushed it.
I propose: "how the f**k do i discard submodule changes"
Delete the entire directory and re clone it of course
I checked a lot of them, but no bingo. scattered all over
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.
commits are immutable snapshots
git interactive rebase enters, stage right
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.
- Make Structured Commits by context
- Make a MR
- Forgot to Rebase
- Close MR
- Rebase
- Make a MR
- Forgot to push the Rebase so now all Rebase items are on my MR
- Close MR
- Reset Changes
- Push Rebased Items
- Make Structured Commits,
- Forget a file
- Reset Changes
- Make a mega Commit
- Make a MR
- Pipeline fails
git is a blockchain without a proof of work
The proof of work is the commit content itself! Unlike some arbitrary brute force task of no value.
In some cases it's "proof of slacking off"
force push for release
I love git until it backfires which at that point I fucking hate git
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.
I miss subversion and perforce.
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've been using git for 20 years and have no idea how it works. Probably will be the next things I will do a deep dive into.
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.
If that's what you're looking for, then: https://gitless.com/
That is what I want. Now if only it was more widespread and my employer allowed it lol