this post was submitted on 23 Nov 2023
281 points (96.1% liked)

Programmer Humor

32050 readers
1518 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
top 39 comments
sorted by: hot top controversial new old
[–] [email protected] 56 points 10 months ago (1 children)

"Git is to github what porn is to pornhub"

[–] [email protected] 2 points 9 months ago (1 children)
[–] [email protected] 2 points 9 months ago

to YouTube, you're youseless if you're yousing youBlock origin.

[–] [email protected] 39 points 10 months ago (1 children)

I almost got a bingo by checking off things I've muttered to myself.

[–] [email protected] 12 points 10 months ago (2 children)

I would've... but mercurial isn't better.

As an aside, stop merging into in-progress private branches.... it makes the absolute worst conflicts.

[–] [email protected] 2 points 10 months ago* (last edited 10 months ago) (1 children)

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 )

[–] [email protected] 2 points 10 months ago (1 children)

What's your workflow that merging into other people's WIP is normal? I'm so confused

[–] [email protected] 2 points 10 months ago

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.

[–] [email protected] 2 points 10 months ago

[rebase needed]

[–] [email protected] 9 points 10 months ago (1 children)

I propose: "how the f**k do i discard submodule changes"

[–] [email protected] 5 points 10 months ago

Delete the entire directory and re clone it of course

[–] [email protected] 9 points 10 months ago (1 children)

I checked a lot of them, but no bingo. scattered all over

[–] [email protected] 3 points 10 months ago

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.

[–] [email protected] 6 points 10 months ago (1 children)

commits are immutable snapshots

git interactive rebase enters, stage right

[–] [email protected] 4 points 10 months ago

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.

[–] [email protected] 5 points 10 months ago* (last edited 10 months ago)
  • 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
[–] [email protected] 4 points 10 months ago (1 children)

git is a blockchain without a proof of work

[–] [email protected] 2 points 9 months ago (1 children)

The proof of work is the commit content itself! Unlike some arbitrary brute force task of no value.

[–] [email protected] 2 points 9 months ago

In some cases it's "proof of slacking off"

[–] [email protected] 3 points 10 months ago

force push for release

[–] [email protected] 3 points 10 months ago* (last edited 9 months ago)

I love git until it backfires which at that point I fucking hate git

[–] [email protected] 2 points 10 months ago (1 children)

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.

[–] [email protected] 1 points 10 months ago (1 children)

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).

[–] [email protected] 1 points 10 months ago

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.

[–] [email protected] 1 points 10 months ago (1 children)

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.

[–] [email protected] 2 points 10 months ago (2 children)

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.

[–] [email protected] 5 points 10 months ago (1 children)

Oh, shit. You got me. It's me, Linus.

What's up?

[–] [email protected] 2 points 10 months ago (1 children)

Do you really have no idea how git works?

Please sign your response with the GPG key for [email protected] or I'm going to call BS.

[–] [email protected] 1 points 10 months ago (1 children)

I wrote it so much time ago I forgot.

-- Linus

[–] [email protected] 1 points 10 months ago (1 children)

Sounds like you forgot how to write proper English along with that.

Hope you're doing okay, bud. Try not to work so hard.

[–] [email protected] 1 points 10 months ago (1 children)

Sorry, my native language is Finnish.

[–] [email protected] 1 points 10 months ago (1 children)

Of course it is. Silly me, how could I forget.

How do you say "Please sign your comment with the GPG key for [email protected]" in Finnish? Google Translate says "Allekirjoita kommenttisi GPG-avaimella osoitteeseen [email protected]", is that correct?

[–] [email protected] 2 points 10 months ago (1 children)
[–] [email protected] 2 points 9 months ago

Lol, Google translate is wild

[–] [email protected] 4 points 10 months ago (1 children)

This one must be the person recruiters have in mind when they list multiple years of experience with technology that just came out in their job postings.

[–] [email protected] 2 points 10 months ago

That reminds me of certain a Reddit or Twitter post some time ago where a recruiter literally told the creator of a certain library / framework that he didn't have the required amount of experience to get the job.

[–] [email protected] 1 points 10 months ago (1 children)

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.

[–] [email protected] 3 points 10 months ago (1 children)

If that's what you're looking for, then: https://gitless.com/

[–] [email protected] 1 points 9 months ago

That is what I want. Now if only it was more widespread and my employer allowed it lol