• vettnerk
    link
    fedilink
    arrow-up
    57
    arrow-down
    1
    ·
    7 months ago

    “Git is to github what porn is to pornhub”

    • xmunk@sh.itjust.works
      link
      fedilink
      arrow-up
      15
      arrow-down
      2
      ·
      7 months ago

      I would’ve… but mercurial isn’t better.

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

      • steph@lemmy.clueware.org
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        7 months ago

        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 )

          • steph@lemmy.clueware.org
            link
            fedilink
            arrow-up
            2
            ·
            7 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.

    • nilloc@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      3
      ·
      7 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.

    • aspirate2959@sh.itjust.works
      link
      fedilink
      arrow-up
      4
      ·
      7 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.

  • Ilflish@lemm.ee
    link
    fedilink
    arrow-up
    5
    ·
    edit-2
    7 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
  • kingthrillgore
    link
    fedilink
    arrow-up
    3
    ·
    edit-2
    7 months ago

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

  • Digital Mark
    link
    fedilink
    English
    arrow-up
    2
    ·
    7 months ago

    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.

    • Piatro@programming.dev
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 months ago

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

      • Digital Mark
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 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.

  • ExLisper@linux.community
    link
    fedilink
    English
    arrow-up
    3
    arrow-down
    2
    ·
    7 months ago

    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.

  • PeriodicallyPedantic@lemmy.ca
    link
    fedilink
    arrow-up
    2
    arrow-down
    1
    ·
    7 months ago

    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.