A real free alternative to Git Graph - eviltoast
  • spartanatreyu@programming.dev
    link
    fedilink
    English
    arrow-up
    11
    ·
    1 month ago

    Looks quite good if you want to use git exclusively in vscode.

    IMO, fork is the best git client for macOS/Windows but lacks native linux support (although they are experimenting with it).

    Until fork gains linux support, this seems like a nice alternative if running on linux (and if it supports the remote development APIs: running on a linux docker image)

    • Cyno@programming.dev
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 month ago

      although they are experimenting with it)

      Do you have a source for this maybe? This is very exciting news but I don’t wanna get my hopes up if it’s not true

      • spartanatreyu@programming.dev
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 month ago

        There’s no official announcement per se, but the windows version is built with .net which has been getting better linux support over the last two years.

        There are unofficial instructions to run it through wine on their issue tracker.

        • Cyno@programming.dev
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 month ago

          I was aware of some people trying to get it working on wine but last I checked it wasn’t really going anywhere, there were some big blockers there, and I didn’t know the developers were interested in it at all.

          Fork and VS are probably the top 2 pieces of software I’m missing to fully migrate to linux so I’d be very happy if they developed an official port that works as well as it does on win.

      • spartanatreyu@programming.dev
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 month ago

        It’s basically just a better sourcetree.

        If you’re already used to sourcetree, it’s a really smooth transition.

        The main reason to switch away from sourcetree is the bugs and papercuts.

        • Bugs: Sure, bugs happen with everything but you’re stuck with them when they happen with sourcetree. There was an issue not too long ago where sourcetree couldn’t scroll. It was classed as a low priority bug and took about a year for it to be fixed. Imagine needing to use your keyboard to scroll up and down, but then git would refresh and take you back to the top where you’d need to start again. Now imagine trying to do that for a whole year. And that was just one bug.

        • Papercuts: It’s so good at some things that you want to forgive the flaws in other things and find workarounds to bugs, but after a while they build up into poisoning you’re experience. For example: things going slow in larger repos, getting git errors when staging certain lines because a different line in the middle had to be staged/removed in a different order, the bi-yearly account issues, etc…

        The thing is, you don’t need to put up with it since fork already does everything that sourcetree does (and a bit more), and they actually spend time sanding off the papercuts so you don’t need to worry about finding workarounds when something goes wrong.

        Just losing the bugs without losing any features is already reason enough to switch.

        But there’s also the improvements over sourcetree as well:

        • Collapsible and sortable git graph (by date or topology)
        • Better staging – Sourcetree supports staging changed content by file, hunk, and sometimes by line when it doesn’t bug out. – Fork supports staging changed content AND original content by file, hunk, and by line. That way if you changed a line, you can keep both the old version and new version in a commit. (e.g. You altered a comment in your code, but then upon self review when staging changes you realised you don’t want to change the comment, but instead you want the new comment to exist under the old comment. Instead of copying the change, undoing the change, then pasting the change into the code, you can simply stage the addition of the line, but discard the removal of the old line. Now both lines exist in your code)
        • Better rebasing
        • Supports new git features (e.g. worktrees, new diff algos, etc)
        • Just how snappy the program is compared to sourcetree, it keeps you in that flow state
  • FizzyOrange@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 month ago

    I’ve tried this. Unfortunately it isn’t anywhere near as good as Git Graph, or at least it wasn’t when I tried it a few months ago. I’ll stick with Git Graph until it stops working I think.