24 ms·
Call me unsophisticated, but I personally find it extremely helpful to use a GUI (currently using SourceTree) to interactively review changes before committing.
by dperfect 12y ago
Call me unsophisticated, but I personally find it extremely helpful to use a GUI (currently using SourceTree) to interactively review changes before committing. I use the command line for almost everything else, but this is one of those cases where a nice GUI really seems to shine.
- csixty4 12y agoThat's how I work these days as well. SourceTree for commits, especially if I just want to stage hunks instead of whole files. Command line for everything else.
- fletchowns 12y agoSourceTree seems like such a complicated mess. `git gui` and `gitk` are my preference.
- shortstuffsushi 12y agoFunny, I ended up with SourceTree because it seemed like a clean and simple (well, at least when I started with it), but still having all the tools I needed, alternative. Sure, it has gotten a bit more complex, but the basic functionality (as I see it: diff, stage, commit, push, pull, branch management) feels simple to me. Could you explain what parts of it you don't like? Also, could you link to git gui? I tried to Google it, but didn't really get good results (shockingly, all the other Git GUI programs came up...).
- fletchowns 12y agoHere's the tool I was referencing: http://git-scm.com/docs/git-gui http://git-scm.com/docs/git-gui It just seemed so confusing compared to the other tools I mentioned, and it would try to do all this extra stuff for you automatically (i.e. adding weird extra arguments to the git commands and I had no idea what they did)
- shortstuffsushi 12y agoAh, the weird extra arguments is something that I had noticed as well. And I have to admit, with some shame, that I have not taken the time to look into why.
- dasil003 12y agoI use both in moderation. My workflow is primarily raw CLI (no aliases, no github extensions, etc). I have vim configured as my primary editor and my .vimrc has the vim-git plugin (https://github.com/tpope/vim-git https://github.com/tpope/vim-git) loaded so I can enforce 50-char summary and 72-char line-wrapping. I use other clients for special purposes: Fugitive (https://github.com/tpope/vim-fugitive https://github.com/tpope/vim-fugitive) primarily for git blame while working. SourceTree for visualizing branches and for staging individual lines from a hunk in a finer grained fashion than `add -p` allows. Occasionally for branch maintenance when an interactive visual list is useful. gitk for loading partial histories (eg. --author options, pickaxe option), visualizing complex branch arrangements that make SourceTree choke, anytime I need performance to search back many months.
- tomphoolery 12y agoI also use Vim and Fugitive, but instead of using a GUI I use `vimdiff` as my Git mergetool and difftool. You can use `git difftool` instead of `git diff` and your diffs will open in `vimdiff`. This also goes for any other diff programs which take command-line arguments, like some GUI programs, FWIW...
- madeofpalk 12y agoTry the GitHub app (which works with non-github git repos as well). It's feature list is TINY compared to SourceTree, its pretty and has a very easy to use commit interface. https://mac.github.com https://mac.github.com or https://windows.github.com https://windows.github.com
- fletchowns 12y agoI'm on Linux
- Sammi 12y agoNo Sourcetree either on Linux :~(
- freehunter 12y agoI really really really wish that GitHub's application worked on Linux. Linux is seriously missing a lot of nice GUI applications that OSX and Windows get. Actually, Linux is missing a lot of nice convenient things that Windows and OSX have. It's all technically possible on Linux, but it's intentionally left difficult (or "advanced") for no reason that I can tell. Just the other day I was trying to install Lua on a Linux machine for the first time. Lua for Windows comes as a single installer that includes Lua, over a dozen batteries-included libraries, and a text editor. To get that on Linux, you have to yum install lua, install luarocks from source, then luarocks install every library you want to have. The only reason Linux is nicer for certain kinds of programming is because Bash and the GNU utils are so great. But why bother when there's a world of people making things so easy and smooth for Windows?
- lsaferite 12y agoAs another commenter mentioned, tig is amazing.
- hrayr 12y agoThis is exactly what I do also, all I use SourceTree for is to review my changes. I'll go back to the command line to commit and push.
- balls187 12y agoI'm with you on this as well. I attempt to make small localized changes, thus `git diff` usually suffices. However if I forget to commit often, or end up doing a big refactor, I will use SourceTree to aid in inspecting the diff. Additionally, I find staging hunks much more intuitive via a GUI than the command line.
- moron4hire 12y agoThat is literally the only reason I use Github for Windows. I'll have to check out SourceTree.
- Immortalin 12y agoTortoise git is also not bad.