loading...

Discussion on: Why Git instead of SVN

Collapse
lietux profile image
Janne "Lietu" Enberg

Even just a single person benefits from using a good DVCS system over SVN/similar. SVN etc. are painfully slow, can't deal with branching or even just properly tracking changes, and are in so many other ways obsolete.

However, just picking Git because everyone picks Git is stupid, as is the case with most tools. Mercurial definitely is better for most uses. Then there are special cases (e.g. games etc.) where something like Plastic SCM is better.

The only workable GUI I know for Git is GitKraken, and that's a fairly recent thing. SourceTree supports both, but isn't great on either. TortoiseHG is what I typically use with Mercurial.

The worst thing about Git is that it was written by a kernel programmer, a person who has literally no idea of how human beings function and think, and really didn't care. Most commands in Git are much more confusing than they need to be, whereas Mercurial is trying to work in a predictable and understandable manner.

Just the amount of people who "proudly" present how many aliases they've set up on their machine to make dealing with git more reasonable is a good sign of this. I've never found a need to make a single shell alias to work with Mercurial.

It really terrifies me how many people think using Git from the CLI makes you cool or something, and then because they can't figure out how it works they just do a blind git add -A && git commit -m '...' && git push -f .. and people seriously just use push -f instead of trying to understand what is wrong when they've got 5 heads on a branch that should be merged, or they've not pulled other people's changes.

With a GUI you tend to see exactly what changes have been made, you can view the per-file side-by-side diffs easily to confirm it's what you think it is, commit what you wanted, and then see the different heads easily.

Collapse
victordev92 profile image
Victor Carvalho

"It really terrifies me how many people think using Git from the CLI makes you cool or something[...]"

Perfect point

Thread Thread
moopet profile image
Ben Sinclair

I don't think it's necessarily "cool" but I genuinely have trouble using GUIs for these sort of things.

Collapse
lingam247 profile image
Daniel Selinger

The only workable GUI I know for Git is GitKraken, and that's a fairly recent thing. SourceTree supports both, but isn't great on either. TortoiseHG is what I typically use with Mercurial.

There's also Git-Tower (git-tower.com). But it's Mac/Win only :-(

Thread Thread
artemis profile image
Diane

My favourite client (and the only one I use nowadays) is SmartGit, a FOSS tool that's just awesome to work with. No stupid and useless animations, no "beautiful UI" hiding absence of features, just a solid professional tool.

Thread Thread
lingam247 profile image
Daniel Selinger

On the other hand the UI looks a little busy on this tool. But hey whatever gets the job done. I'm currently using git-cola most of the time these days...

Thread Thread
artemis profile image
Diane

It's configurable, but yes.

I've used git-cola in the past, quite nice overall, but the in-i3 ui is weird.

Collapse
lietux profile image
Janne "Lietu" Enberg

"Then there are special cases (e.g. games etc.) where something like Plastic SCM is better."

...