Git…Command-line or GUI?

A short quick post to get some feedback from you, the reader.

I’m working to learn and transition to Git (using Jason Meridth’s great series on Git).  Up to this point I’ve been using the command-line only, working to learn Git on the command-line before I rely on a tool or GUI abstraction. Recently I’ve been going through some refactoring on a project where I’m using Git. Right now I’m slow, really slow. Renaming files/classes for example is cumbersome to say the least.

I got to wondering if knowing the command-line is even useful anymore or it just a geek badge of honor that a few developers like to point to proudly when talking about skill sets? Some part of me feels like using a tool like GitGUI or TortoiseGit is “cheating”.  Ironically I admire Git because it seems to let me work the way I want to work; branch often, local commits, easier merging and yet right now the command-line use of Git is my primary roadblock. It is at this point that I start thinking I should give up on the command-line since an SCM tool shouldn’t be intrusive and move to a GUI tool and give up my chances at fifth degree black belt geek.

So what do you think?

  1. Use command-line go slow now but know the tool very well.
  2. Use GUI and go faster, however always be reliant on the GUI abstraction

Is using a GUI “cheating”?


Posted 10-07-2009 2:15 PM by Tim Barcz
Filed under:

[Advertisement]

Comments

Ross M wrote re: Git…Command-line or GUI?
on 10-07-2009 4:05 PM

Go get GitExtensions and enjoy life

Rogerio wrote re: Git…Command-line or GUI?
on 10-07-2009 4:07 PM

Dont use the GUI. The initial learning curve is slow, but the improvement on the team productivity after the initial culture shock is huge.

Had the same dificulties on my company, we did a radical change from SS to Git. Big shared code, about 100 people from different teams.

But the teams where convinced about the value and in 4 months we found the best workflow for our scenario. Now we cant imagine our lives without Git.

Rogerio wrote re: Git…Command-line or GUI?
on 10-07-2009 4:08 PM

Dont use the GUI. The initial learning curve is slow, but the improvement on the team productivity after the initial culture shock is huge.

Had the same dificulties on my company, we did a radical change from SS to Git. Big shared code, about 100 people from different teams.

But the teams where convinced about the value and in 4 months we found the best workflow for our scenario. Now we cant imagine our lives without Git.

Bill Barry wrote re: Git…Command-line or GUI?
on 10-07-2009 4:17 PM

The command line may be slow now, but as you learn it, you only get faster.  I've noticed it is much like resharper. You are slow at first until you learn where everything is, but eventually you are much faster using it than you would be without.

Tim Barcz wrote re: Git…Command-line or GUI?
on 10-07-2009 4:23 PM

@Rogerio,

"Dont use the GUI. The initial learning curve is slow, but the improvement on the team productivity after the initial culture shock is huge."

Is the productivity gain once learned greater on the command-line that that of the GUI abstraction?

Jason Meridth wrote re: Git…Command-line or GUI?
on 10-07-2009 4:25 PM

Command line.  I still haven't tried Git Extensions though (I will this weekend)

With git aliases, you can shorten any commands that are annoying.  Easy learning curve IMO.

Brian Mavity wrote re: Git…Command-line or GUI?
on 10-07-2009 4:46 PM

Command line is a geek badge of honor for sure, but at the same time it's still useful on occasion. Thing is that none of the git GUIs I have seen are very usable. They're either dialog or form element fests, so at this point you're probably better off with the command line for git.

Eber Irigoyen wrote re: Git…Command-line or GUI?
on 10-07-2009 6:08 PM

if you can do everything you need and can do from the command line, but faster, who cares! just go for it

Alexander Groß wrote re: Git…Command-line or GUI?
on 10-07-2009 6:41 PM

Do you see a need to rename files using the shell? With Git the tedious rename procedure known from SVN is finally gone (detect renames!) which is a major advantage, especially if you're dcommitting to SVN.

I let ReSharper do the file rename and use the command line to add files to the index, which is what I found to be slowing me down initially. Until I discovered git add with the --interactive switch which shows a list of changed and unknown files.

Markus Zywitza wrote re: Git…Command-line or GUI?
on 10-08-2009 1:27 AM

I use GitExtensions.

If using a GUI is cheating, what is using Resharper? Ain't NHibernate cheating cause you're not writing that SQL and plumbing code yourself?

Go and use what works.

Per Erik Stendahl wrote re: Git…Command-line or GUI?
on 10-08-2009 3:21 AM

What is wrong with cheating? Isn't that what computers are all about? :-)

Krzysztof Kozmic wrote re: Git…Command-line or GUI?
on 10-08-2009 8:47 AM

I'm no GIT expert, but after initial spike with command line, I moved to GUI tools. I've been using SVN for the last couple of years solely from GUI, and I don't think I lost anything by doing so. How would Git be different about it?

sergiopereira wrote re: Git…Command-line or GUI?
on 10-08-2009 9:32 AM

One command line advantage to me is that it is the same on every platform. The cross-platform GUIs look like crap everywhere.

Another factor can be the relative immaturity of the git GUIs when compared to, say, TortoiseSVN. But this problem is only temporary (hopefully).

I'm not gonna take sides until we have truly usable GUIs. For now I have to use a bit of both.

Tim Barcz wrote re: Git…Command-line or GUI?
on 10-08-2009 9:37 AM

@Krzysztof,

I agree with you.  However a lot of people whom I respect are working from the command-line with Git (and maybe always did with Subversion).  I want to know what I don't know and what I could be missing.

Tim

Tim Barcz wrote re: Git…Command-line or GUI?
on 10-08-2009 9:38 AM

@Alexander

Are you saying if I rename a file in my solution, then add it though Git, Git will see it as a rename?  I did not know that and that could be very beneficial in this current "hurdle"

Tim Barcz wrote re: Git…Command-line or GUI?
on 10-08-2009 9:45 AM

@sergio,

Are you using Git?

sergiopereira wrote re: Git…Command-line or GUI?
on 10-08-2009 11:32 AM

@Tim

Yes but not in a large scale. Mostly for my own personal projects and generally following other projects from GitHub.

I can't comment on how good the GUI tools are for working with other people's branches.

zac duncan wrote re: Git…Command-line or GUI?
on 10-08-2009 1:46 PM

"Are you saying if I rename a file in my solution, then add it though Git, Git will see it as a rename?  I did not know that and that could be very beneficial in this current "hurdle""

git add . && git add -u

That will pick up renames provided the contents of the file haven't changed too significantly.

With regards to the command line vs. gui argument, I'll admit I haven't used a git gui beyond using gitk to look at diffs. However, the productivity I get using git from the command line is greater than the productivity I've gotten out gui tools for other SCMs including Tortoise SVN, Subclipse, Subversive and Visual Studio's VSS integration.

One you learn the command line, you can do really cool things with very little effort.

David R. Longnecker wrote re: Git…Command-line or GUI?
on 10-08-2009 3:38 PM

Like a few others, my Git experience is command line.  When I originally picked up Git, I loaded up the GUI tools, Git Extensions, and it didn't jive well with me.  My assumptions of the tools to the task didn't align or something.  It also didn't work well with my addiction to mouseless computing. ;)

I tossed those tools to the side, loaded up Portable Git, opened up a command prompt, and set off--and I haven't looked back.

Since I spend my entire day with a PowerShell window open, I've tweaked my PowerShell environment for Git lovin' as well as wrote cmdlets, functions, etc. to help with common tasks (things that went beyond a simple alias).

James Gregory wrote re: Git…Command-line or GUI?
on 10-10-2009 7:58 AM

For renames "git add -A" is your friend, it'll stage any additions/modifications and deletions in one. Git automatically assumes that any new file and deleted file that share a certain percentage of content (not sure of the actual percentage) are actually the same file, just renamed; this is awesome as (for me) 90% of using VS integration with SVN was for the rename support.

Paul Batum wrote re: Git…Command-line or GUI?
on 10-10-2009 11:41 AM

I use git gui most of the time to stage changes because I don't like viewing diffs from the command line. I use gitk to visualize branch structure and to perform the occasional task such as reseting a branch or creating a tag. I use the command line for everything else. This feels like a reasonable balance to me.

Ben Scheirman wrote re: Git…Command-line or GUI?
on 10-14-2009 3:00 PM

I'd say learn the command line, and learn it well.  I bet you won't need the GUI for most things, unless you're merging or cherry-picking files/(or lines in files) to stage for your commit.

The GUI tools can be helpful, but the CLI is so good I can't imagine using some ugly GUI tool to do my day-to-day workflow.

+1 to what Sergio said about being the same  across platforms.  I use git on windows and mac.

devlicio.us wrote re: Git…Command-line or GUI?
on 06-28-2011 12:01 AM

Git command line or gui.. Huh, really? :)

k86v pon videos ay9t wrote re: Git…Command-line or GUI?
on 07-03-2011 12:03 AM

Git command line or gui.. Awful :)

buy stendra generic wrote re: Git…Command-line or GUI?
on 02-13-2013 3:08 PM

c93N14 Hey, thanks for the blog post.Really thank you! Will read on...

generic clomid wrote re: Git…Command-line or GUI?
on 02-27-2013 7:21 PM

Aw32hI Very good article.Really thank you! Keep writing.

buy discount viagra wrote re: Git…Command-line or GUI?
on 03-03-2013 12:39 AM

uPLm32 Thank you for your blog article. Much obliged.

bookmarks wrote re: Git…Command-line or GUI?
on 03-13-2013 10:46 AM

fJvvuF I really enjoy the article post.Thanks Again. Awesome.

social bookmarks wrote re: Git…Command-line or GUI?
on 03-15-2013 1:32 AM

BHxrIu Great, thanks for sharing this blog post.Thanks Again. Much obliged.

buy social bookmarks wrote re: Git…Command-line or GUI?
on 03-24-2013 5:54 PM

mVq3cn wow, awesome blog article.Much thanks again. Cool.

social bookmarking service wrote re: Git…Command-line or GUI?
on 04-07-2013 8:22 PM

uMgPZG Im obliged for the blog post.Really looking forward to read more. Keep writing.

digital slr lenses wrote re: Git…Command-line or GUI?
on 05-14-2013 9:27 AM

RWIs8K Muchos Gracias for your post.Thanks Again. Fantastic.

social bookmarking service wrote re: Git…Command-line or GUI?
on 06-05-2013 10:59 PM

fzWeWM Thanks for the post. Keep writing.

cheap social bookmarks wrote re: Git…Command-line or GUI?
on 06-19-2013 4:12 PM

oc8kPx Fantastic blog post.Much thanks again. Really Cool.

social bookmarks wrote re: Git…Command-line or GUI?
on 06-20-2013 7:18 PM

5snT4N Great, thanks for sharing this article post.Really looking forward to read more. Fantastic.

great service wrote re: Git…Command-line or GUI?
on 07-04-2013 1:18 PM

r80wS9 Very informative blog.Much thanks again. Will read on...

moldavian news wrote re: Git…Command-line or GUI?
on 07-08-2013 11:01 PM

z1la8y This is one awesome blog article.Thanks Again. Really Great.

news wrote re: Git…Command-line or GUI?
on 07-11-2013 7:03 PM

M3yiHr I cannot thank you enough for the blog.Much thanks again. Much obliged.

hot news wrote re: Git…Command-line or GUI?
on 07-26-2013 9:56 AM

ZiSfUw Major thankies for the blog.Really thank you! Fantastic.

cheap social bookmarks wrote re: Git…Command-line or GUI?
on 07-28-2013 5:23 AM

Dml0c6 Thank you ever so for you blog article.Thanks Again. Really Cool.

super news wrote re: Git…Command-line or GUI?
on 08-02-2013 11:21 AM

829i17 Major thanks for the post.Really thank you!

amazing news wrote re: Git…Command-line or GUI?
on 08-03-2013 4:10 PM

QqPbSr Wow, great blog. Cool.

awesome links for you wrote re: Git…Command-line or GUI?
on 08-19-2013 11:51 PM

j4DwkU Thanks for sharing, this is a fantastic blog post.Really looking forward to read more.

awesome links for you wrote re: Git…Command-line or GUI?
on 08-22-2013 11:43 AM

exbUF4 I think this is a real great article post. Great.

link building wrote re: Git…Command-line or GUI?
on 09-07-2013 11:06 AM

wN5L1S Fantastic article.Much thanks again.

make money online wrote re: Git…Command-line or GUI?
on 09-12-2013 11:21 AM

vB9W2z This is one awesome blog.Much thanks again. Really Cool.

awesome link building wrote re: Git…Command-line or GUI?
on 09-24-2013 4:35 PM

nH9yMF Wow, great post.Thanks Again. Fantastic.

great seo work wrote re: Git…Command-line or GUI?
on 09-29-2013 8:21 AM

YawR1D I think this is a real great post.Really looking forward to read more. Cool.

best linkbuilding wrote re: Git…Command-line or GUI?
on 09-30-2013 11:58 PM

BnHOM0 Fantastic blog post.Really thank you! Really Cool.

link building team wrote re: Git…Command-line or GUI?
on 10-16-2013 4:21 AM

aNOXgu Thank you ever so for you article post. Fantastic.

top seo guys wrote re: Git…Command-line or GUI?
on 10-24-2013 5:34 PM

xAF8mB Thank you for your article. Want more.

take a look at it! wrote re: Git…Command-line or GUI?
on 10-31-2013 5:40 AM

esCbik Really enjoyed this blog post.Much thanks again. Fantastic.

check this out wrote re: Git…Command-line or GUI?
on 11-20-2013 5:13 PM

tqQ2Gn Awesome post.Much thanks again. Will read on...

seo service wrote re: Git…Command-line or GUI?
on 12-14-2013 3:56 PM

SYaIm9 Major thankies for the article post. Cool.

check it out wrote re: Git…Command-line or GUI?
on 01-07-2014 10:38 PM

2Nx5uH Thank you for your article post.Really thank you! Really Great.

stunning seo guys wrote re: Git…Command-line or GUI?
on 01-10-2014 3:08 AM

mYQDwe Im grateful for the blog post.Thanks Again. Awesome.

horny wrote re: Git…Command-line or GUI?
on 01-15-2014 7:00 AM
nice seo guys wrote re: Git…Command-line or GUI?
on 01-15-2014 8:28 PM

BI5HP2 I really enjoy the post.

check it out wrote re: Git…Command-line or GUI?
on 01-20-2014 3:07 AM

R89ZBg Thanks for sharing, this is a fantastic blog post.Much thanks again.

smashing site wrote re: Git…Command-line or GUI?
on 03-13-2014 6:03 AM

7catxw Major thankies for the blog post.Much thanks again. Will read on...

seo for cheap wrote re: Git…Command-line or GUI?
on 03-22-2014 9:26 AM

30PBpC A round of applause for your article. Really Great.

best prices wrote re: Git…Command-line or GUI?
on 03-25-2014 9:17 PM

9e6kc6 Enjoyed every bit of your blog article.Thanks Again. Really Cool.

best prices wrote re: Git…Command-line or GUI?
on 04-01-2014 5:52 AM

QC8DJG Thanks a lot for the blog post.Much thanks again. Really Great.

seo for cheap wrote re: Git…Command-line or GUI?
on 04-01-2014 10:12 AM

Mn8oKg Awesome article post.Thanks Again. Really Cool.

stunning service wrote re: Git…Command-line or GUI?
on 04-04-2014 3:35 PM

CKn47C wow, awesome article post.Thanks Again. Will read on...

Add a Comment

(required)  
(optional)
(required)  
Remember Me?

About The CodeBetter.Com Blog Network
CodeBetter.Com FAQ

Our Mission

Advertisers should contact Brendan

Subscribe
Google Reader or Homepage

del.icio.us CodeBetter.com Latest Items
Add to My Yahoo!
Subscribe with Bloglines
Subscribe in NewsGator Online
Subscribe with myFeedster
Add to My AOL
Furl CodeBetter.com Latest Items
Subscribe in Rojo

Member Projects
DimeCasts.Net - Derik Whittaker

Friends of Devlicio.us
Red-Gate Tools For SQL and .NET

NDepend

SlickEdit
 
SmartInspect .NET Logging
NGEDIT: ViEmu and Codekana
LiteAccounting.Com
DevExpress
Fixx
NHibernate Profiler
Unfuddle
Balsamiq Mockups
Scrumy
JetBrains - ReSharper
Umbraco
NServiceBus
RavenDb
Web Sequence Diagrams
Ducksboard<-- NEW Friend!

 



Site Copyright © 2007 CodeBetter.Com
Content Copyright Individual Bloggers

 

Community Server (Commercial Edition)