17 comments

[ 5.1 ms ] story [ 45.9 ms ] thread
What helped me make Git click was learning how to use SourceTree. It has intuitive UI (compared to GitHub Desktop) accompanied by a pretty graph of commits. Can't recommend it enough for "visual" type of people like me.
I totally agree. Git is definitely a visual activity (as admitted by the existence of git tree). Kind of like how most sane people don't use text-based file browsers.

Actually I don't think SourceTree goes far enough. For example why can't I drag and drop branch labels onto commits to move them?

You can do this with SmartGit, which I prefer over Sourcetree.
>I totally agree. Git is definitely a visual activity (as admitted by the existence of git tree).

Maybe it depends on the user? I don't find the git visual tool very useful..

i'm exactly the same way. i can do the command line but i feel that in this case the gui provides way more information than a command line could.

i wanted to like GitHub for Windows but the "sync" button is too abstracted to be useful for anything but personal "dropbox" style repo use

I still use Tower (https://www.git-tower.com/mac/) to this day and despite being proficient with the git CLI there are many operations that I much prefer doing in Tower.

Things like line-by-line staging, resolving merge conflicts, cherry picking, etc. All feasible in the command line, but just much easier to reason with and operate visually.

I spent 10 minutes trying to break it. Some shell-ish commands are provided and work sometimes (ls, echo, cat), but not all the time. I probably should just look at the source to figure out if there is just some js object acting like a shell, but I was secretly hoping they really were so bold as to set it up to trigger a lambda, or start a docker image with each saved state.
Hi James I worked on this course a few years back. This predates docker, so I want to say we used a combination of some sort of jail, the correct privs, app armor, and of course isolated servers. :) It is actually running the commands on a real server, its just really locked down to the point of even removing some of the normal shell commands from the user that's running.
This is cool. Seems a little slow to react though, and I wonder if this could throw some people off.
... then wait until you have more time? Git is confusing and definitely takes longer than 15 minutes to learn to any useful degree.
I don't think they're advertising complete mastery, here – just showing how the barrier to entry isn't high for basic use.

There's "tutorial" in the title tag and "try" in the URL; cut them some slack.

Well, you can definitely learn enough to make mistakes in 15 minutes. If you want to fix the mistakes, put on a pot of coffee cuz you're gonna be here a while. And that's Git.
I really like this tutorial format. Little slow after typing some commands but the layout and instant feedback is really nice. Super easy to understand and follow.
Hey folks, we (Code School) made this with GitHub in 2012. It keeps being plopped on HN year after year which is great but it would be nice if everybody realized that we did this as an introduction to Git — not as an end-all-be-all.

We make interactive courses, and we have an entire Git Path where we get into Git a lore more deeply. Try Git was build as a free resource at a time where a lot of people were very Git shy. It's been mostly left alone since then. I'd love for us to revise it, but sadly we haven't had the time since.

Have a link to your more advanced Git courses? I feel like I've got a solid grasp on the basics, but could use some help with more advanced features, when I get into hairier reverts, rebases and merges things can get confusing.
(Hey hey! I'm also from Code School. Normally wouldn't want to sound too market-y and respond, but also didn't want to leave this one unanswered. The follow-up courses are paid.)

Here's our git path, with covers a bunch of Git topics: https://www.codeschool.com/learn/git

In Git Real and Git Real 2, we cover cloning, branching, rebasing, stashing, submodules and more.

In Mastering GitHub, you move out of the browser, and all of your work is done on a fork of a GitHub repository -- with our bot collaborating and checking your work on there.