Hacker News new | past | comments | ask | show | jobs | submit login

Can you elaborate on why? I've found it to be far from intuitive and basically a direct mapping of CLI commands straight into UI elements. A user unfamiliar with command line git arguments would have a difficult time with SourceTree, I would imagine (most of my coworkers have).



A user unfamiliar with command line git arguments would have a difficult time with SourceTree

Let's be honest about git: A user unfamiliar with the CLI commands will have a difficult time, period. I hesitate to predict that it's impossible to create a good UX, but git is a very complicated system with an abstraction that leaks all the way down to database records. Breathe on it wrong and the repository will wedge into a state that sends longime veterans off to stackoverflow.

Yes, git is worth it... but so far every clever GUI has basically been a convenience tool for power users, not a better abstraction that can sidestep the learning curve. It's hard to see how this is going to change without some sort of fundamental change in git.


I recently started keeping some source code in a gist, which github was eager to point out is a full repository. The UI is not very usable, but it's not hard to understand for the non git enlightened like myself. If nothing else, this proves that it's possible to create an easy to use git GUI. (with reduced functionality)


The github GUI for Mac/Windows solves this problem completely, by hiding the vast majority of git's power-user features. (No stage, no no tracking branches, no manual rebasing.)


Oh, how I wish this were so!

Even with fairly boring usage, the Github GUI periodically wedges my repository into a state which requires CLI interaction (and a trip to stackoverflow). It's even worse for newbies - I get desperate pleas for help from clients all the time. I have come to the conclusion that there is no way around teaching the command line first, then giving them the Github client after they achieve competence.


Can you repro that?


Can I repro giving the Github client to newbies and getting desperate pleas for help soon afterwards? Yes, it's consistent :-)

No, I have not tried to reproduce the incidents which screwed up my repository. After a few harrowing experiences I pretty much gave up using the Github for Mac client for anything except basic commits. And even that screws up - I frequently have to commit files twice; it's like the client only stages some of the files, even though they're all checked. If my commits are large I usually go to the command line to avoid the double commit msgs. I'm about to give up entirely.


It... really shouldn't be doing that. What is your precise workflow?


I believe it's Tower that plays that role. I know a designer who uses it, who would be bewildered by the CLI git.


I don't think this is really for programmers though is it? I thought this was more about content/documentation developers.


It looks like it's for programmers to me.


basically a direct mapping of CLI commands straight into UI elements

That may be some of the reason that I like it. I am able to do a lot of the things that I could do from the command line, but with a visual interface to help me visualize what's going on.

For example, when I'm doing a commit, I can click on each file that's been modified and see the diff for that file right on the side. I can then stage all or just parts of the changes. So if I have some debug lines, I can stage the file and then unstage the debug logging so it doesn't get committed.

There's just a lot of little things like that that you CAN do with the git command line yourself, but it wraps up in a way that's easier to consume.

I'd have to take more time than I have now to write up a full review of what I like about it compared to other GUIs.


I haven't seen it mentioned here but Tower for Mac OS has been a great tool for those who are not too familiar with git or it's associated commands. I've recommended it to at least a few hundred clients many of which use it religiously today.


Tower is slow. While a slightly nicer UI, and it running like shit on large repos - at least for work - makes it a non-starter


One more datapoint: can't say I like SourceTree. Still looking for a Mercurial GUI worth using. My biggest issue is that I'm a big user of annotate/blame (I have a very bad memory so finding out where/how/why a given piece of code was created or evolved is something I do at least weekly if not daily) and all the hg guis have absolute shit annotate. They also tend to look rather bad.

GitX is pretty good (I think I still prefer the original one over the Laullon gitx, but the Laullon gitx has an acceptable annotate view and look nice), and surprisingly the best annotate view I've seen so far is in bazaar's qt-based UI. The tools are not necessarily great overall (and the OSX interactions are downright weird), but the annotate is excellent.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: