I’m wondering if you use any (graphical) clients to manage your Git, and if so, what client you use.
I myself have to use git professionally across all 3 major OS-es, and I currently use Sourcetree on Windows and macOS, and the Git tools built-in into IntelliJ on Linux.
Have given MaGit a try, but just couldn’t get all the shortcuts to stick in my mind.
Interested to hear your experiences!
Fork !!!
It’s hands down the best git client.
It’s free as in: sublime text or winzip where they ask you once a month if you want to pay for it but you can just select: I’m still trying it out, and it gets out of your way.
And one killer feature that I haven’t seen any other git clients handle: allowing me to stage only one side of the diff. As in: if I change a line (so it shows up as one removed line and one new line in git), I can decide to add the new line change while still keeping the old line.
So changing this:
doThing(1);
into this:
doThing(2);
Shows up in git as:
- doThing(1); + doThing(2);
But if I still want to keep
doThing(1);
, I don’t have to go back into my code to retypedoThing(1);
, or do any manual copy-pasting. I can just highlight and add onlydoThing(2);
to the staging area and discard the change todoThing(1);
.So now the code exists as:
doThing(1); doThing(2);
Now with a one-liner example like this, we could always re-enter the code again. But for larger code changes? It’s far easier to just highlight the code in the diff and say: yes to this and no to the other stuff.
And when you get used to it, it makes it really easy to split what would be large git commits into smaller related changes keeping your git history clean and easy to understand.