1. 25
  1.  

  2. 8

    Hey at least it’s C++ and not Electron.

    For my own workflow I’ve found the git command line to be fine for the basic operations. But sometimes resolving merge conflicts can be tricky and for that I use a cheesy little tool called tkdiff. The default color scheme is not too pretty, so I have these color customizations:

    ~/.tkdiffrc:

    define bytetag {-background blue -foreground black}
    define chgtag {-background LightSteelBlue -foreground black}
    define currtag {-background Khaki -foreground black}
    define deltag {-background Tomato -font {Monaco 16 bold}}
    define difftag {-background gray -foreground black}
    define inlinetag {-background DodgerBlue -foreground black -font {Monaco 16 bold}}
    define instag {-background PaleGreen -foreground black -font {Monaco 16 bold}}
    define overlaptag {-background yellow -foreground black}
    define textopt {-background black -foreground white -font {Monaco 16} -wrap none}
    

    It’s nice because the tool has just one function, and you can make it integrate with git by doing:

    ~/.gitconfig:

    [diff]
    	tool = tkdiff
    [merge]
    	tool = tkdiff
    

    Then when you have a merge conflict, run git mergetool.

    1. 5

      I use Meld which is nice, but I’m always on the lookout for something better.

      1. 2

        You’ve got Semantic Merge a plain text and semantic diff and merge tool with really good visual component. It supports C++.

        http://semanticmerge.com/

        1. 2

          Thanks, I’ll check it out.

    2. 3

      For the rare occasions I need a three way diff, I use Beyond Compare, which does a very good job and can also compare other things (directories, pictures, hex data, etc.).

      1. 3

        Looks pretty nifty but I always feel there is a visual element missing there GMaster solves that brilliantly plus, if you work a supported language, some cool semantic stuff in it too:

        https://gmaster.io/

        https://gmaster.io/tour

        1. 2

          I honestly think they nailed it. Creating a command-driven visual interface, just like Sublime Text, for git.

          And it’s fast and cross platform.

          Been using it a work day and seems promising. Waiting for a real merge to see how it goes…

          1. 1

            Looks nice but my usage so far has been limited by a bug. On Kubuntu 18.04 “Preferences -> Edit Settings” does nothing, I need to change dpi settings so I can see it on a 4k monitor. Unfortunately to file a bug I would need to register for their forum, and I don’t need anymore one off accounts.

            1. -10

              We don’t need another kilograms of heavy UIs to make people “click ok and get on with things”, we need people to understand how the Git actually works.

              Remember that Git is not a new iPhone and it doesn’t need to be used by idiots, morons and people with zero knowledge - actually, it lifts the bar a bit, but if you sit down and focus on how Git really works, you’ll grasp the ability to answer yourself a question “What I need to do to achieve that…?” in less than a hour.

              Instead of copying and pasting magic spells from Stuck Overblown.

              1. 22

                Please could you not be this acerbic here in future? Thanks.

                1. 5

                  I think both sides are right, people could become more expert at easier tools. The nice thing with this UI is it doesn’t seem to hide the underlying git commands, you can hover over the buttons to see what they do.

                  1. 3

                    What @0x2ba22e11 said.

                    1. 1

                      Despite your tone, you’re not entirely wrong when it comes to coders.

                      Admittedly Git could do with some overhaul in its command line arguments to make it more logical, but it’s a power tool and it’s possible to wrap your head around it. Not everyone does, but I think they should. Like with their editor/IDE of choice.

                      If someone’s more productive with a UI like this and there’s no real detriment, let the markets decide.

                      Git can be used to track non-code content, though. The Apollo 17 project comes to mind, as it’s one of my favorite things online.

                      I contributed to it using CLI Git, but for less technical people to get involved in things like that, there’s nothing wrong with a GUI.

                    2. -1

                      yay, another gitk implementation. but this one costs $99 to use the dark theme! i’ll stick with gitv thanx