Comments on: Getting Git http://www.terminally-incoherent.com/blog/2013/08/14/getting-git/ I will not fix your computer. Tue, 04 Aug 2020 22:34:33 +0000 hourly 1 https://wordpress.org/?v=4.7.26 By: nicolas http://www.terminally-incoherent.com/blog/2013/08/14/getting-git/#comment-225374 Thu, 19 Feb 2015 18:41:09 +0000 http://www.terminally-incoherent.com/blog/?p=15302#comment-225374

for some reasons the “git fans” have this tendency to always deny every single problem about git disastrous command line interface…
I can tell you that I DO agree the command line is terrible and sucks a lot.
why ? incoherent and not intuitive. and the model does leaks out

Reply  |  Quote
]]>
By: Jeff Benson http://www.terminally-incoherent.com/blog/2013/08/14/getting-git/#comment-48402 Thu, 15 Aug 2013 18:52:18 +0000 http://www.terminally-incoherent.com/blog/?p=15302#comment-48402

Thanks for the response. I’m not “profoundly uncomfortable using bash,” but I don’t want to use it on Windows because it’s not Windows-y and practically no other respectable tool claiming good Windows support requires me to. Luckily I found PoshGit for PowerShell, so now I can do Git-related things in the same style and with the same mechanics as I do anything else on my Windows 7 system.

I understand the power of piping and composition that is available from a good shell environment, but as a visual person I appreciate tools that can transcend these mechanics and provide a reasonably good visual representation that’s a little closer to most people’s mental models of what they’re doing at a higher level. I respect your preferences, but I do still appreciate when tooling doesn’t lean so heavily on making users – even power users – work with a command line interface for day-to-day stuff.

Reply  |  Quote
]]>
By: Luke Maciak http://www.terminally-incoherent.com/blog/2013/08/14/getting-git/#comment-48397 Thu, 15 Aug 2013 18:13:39 +0000 http://www.terminally-incoherent.com/blog/?p=15302#comment-48397

Jeff Benson wrote:

So anyone who expresses an opinion about the quality of Git’s interface isn’t a real software developer?

Yes, that’s exactly what I said in the last few paragraphs as I discussed a lot of gits shortcomings and actual flaws in the UI. TLDR: git isn’t perfect, but complaining that it’s command line or uses unix tools is silly considering what it is, and what it was designed for (ie. Linux Kernel source control).

Jeff Benson wrote:

Git is powerful, and I use it every day, but it is also one of the highest learning curves among current version control tools.

Right. Same can be said for Vim and Emacs both of which are fantastically powerful tools with very steep learning curves. My point is that sometimes complexity can’t be simplified and abstracted down. Yes, there are source control tools that are much easier to use but they are not as popular, and don’t offer as much flexibility as git. Sometimes putting up with the learning curve is worth it.

Besides, Git is an open source project which means as users we can help to improve it by submitting enhancement requests, patches and writing better documentation, tutorials and etc.

Jeff Benson wrote:

When using it on Windows, it leaks a lot of Unix-y stuff (especially if you have to use Git Bash to accomplish certain things).

Right… I don’t see the problem here. I mean, I’m trying to see your point, but it is escaping me. Here is the thing: there are currently two relevant desktop operating systems on the market: windows and POSIX-compatible unix-like systems (linux, unix, osx, etc..). Some environments are built for Windows, others work better under unix-like stack. When you start a project, you pick the right environment for the job. Most competent programmers are not one-trick ponies, but are capable of working in a variety of environments and stacks. So they should be comfortable jumping from one OS to the other if a project requires it.

And I’m not talking about dual booting or anything barbaric like that – it’s 2013, not 1991. Nowadays you just slap a pre-made VM onto your hard drive and type in “vagrant up” or something like that. Seriously, few days ago I walked a totally green intern through creating a fully functional LAMP environment on his Win7 laptop using Vagrant and it took us like 15 minutes going from 0 to phpinfo test page. If someone can’t do it, I don’t want them touching any code.

If you are profoundly uncomfortable using bash, this tells me that:

1) You never worked on a project that involved a linux/unix server
2) You are not inquisitive enough to even play around with the ONE other major OS out there to get a feel for it.

Both of these things are pretty bad in my book.

Jeff Benson wrote:

There are some who find heavy dependence on the command-line to be clunky and inelegant

I… I’m sorry, but I can’t relate to that. I think that command line is just about the most elegant thing you can get. You have commands that use STDIN and STDOUT and you can pipe stuff between them creating complex chains out of simple components. You can save these commands into a text file, and all of a sudden you have automation. There is a built in command history that provides you with a searchable audit trail. I can use the script command to save my entire session into a text file. I can use tmux, start a big compile or batch job, detach the session, drive home, ssh to my work computer, attach the session and check the progress of the job.

I actually get annoyed when things don’t have scriptable command line interfaces and force me to context switch, grab the mouse and push buttons like it’s a Zynga game or something.

Reply  |  Quote
]]>
By: Jeff Benson http://www.terminally-incoherent.com/blog/2013/08/14/getting-git/#comment-48390 Thu, 15 Aug 2013 17:04:13 +0000 http://www.terminally-incoherent.com/blog/?p=15302#comment-48390

So anyone who expresses an opinion about the quality of Git’s interface isn’t a real software developer? Git is powerful, and I use it every day, but it is also one of the highest learning curves among current version control tools. When using it on Windows, it leaks a lot of Unix-y stuff (especially if you have to use Git Bash to accomplish certain things). There are some who find heavy dependence on the command-line to be clunky and inelegant, myself included. Your elitism won’t make anyone love the tool more!

Reply  |  Quote
]]>