My favorite Git "cheatsheet" is easygit (eg), a Perl "porcelain" wrapper for git. It's training wheels wrapper for git. You use real git commands, so you don't need to unlearn anything when graduating to git. easygit has safer defaults and extra sanity checks (like forgetting to stage modified files). The help messages are more verbose and use more consistent terminology than git's man pages. For example, easygit always uses the term "staged" instead of "index/staged/add/hard/soft/mixed/cached/HEAD/etc."
Just knowing this exists helps a lot. Haven't had time to go to git school.
Its great to visual everything but having a gui that enabled you to access all the commands would be even more powerful for non-brainiacs like myself.
I use Subversion a lot on the Mac and have done many subtle things with the available commands but there's often a learning curve to make sure I don't shoot myself in the foot.
Back on Windows there was TortoiseSVN that was a breeze to set up and use. And I know there are similar things for the Mac but haven't find one that was a nobrainer like TortoiseSVN. Its merge editor was pretty good too if memory serves.
Nice visualization. The other day I was looking for a all-in-one visualization like this. It would be for beginners so it wouldn't include all of the more advanced commands/flags like "add --interactive". I couldn't find a decent one so I created my own.
Nice, I like the interactivity. I realize it would make the chart really cluttered, but I wish there was a button to show all of the workflow arrows at once.
Nice, but can you normalize the height of the command-name strips? They can range from 17-19px (before +4 padding) in height, depending on the local font setup I suspect. Cumulatively that's enough of a difference so that in an unusual case (when they're all 19 tall, as they can be in a gentoo+chromium setup), the Local Repository column of strips extends down and obscures the description.
Very nicely done, good visualization and organization of command reference.
It suggests using a 'git pull' for pulling changes from the remote repo. 'git pull' automaticaly merges changes to the current branch thus not giving the user an option to review the changes that are going to happen in the current branch. I think the better way to fetch changes from remote repo is 'git fetch' followed by 'git merge'. Also see: http://longair.net/blog/2009/04/16/git-fetch-and-merge/
I think this could be really good as a way to explain Git to folks who maybe haven't had the exposure to DVCS or Git itself. Version control is surprisingly hard for some people to wrap their heads around. Nice work.
This is so good and useful and original that I recommend you try to get it linked to from the main Git website, and from GitHub. Great job! It really helps visualize what all the commands do, what they effect.
Give him a break. Do you ask every website on the entire internet the same thing? "PG, please replace the font of comments on HN from Verdana to DiscussionForumComment, I have my own preferences on fonts, and I'm sure everybody else does too. "
It's not exactly a massive amount of code being displayed. The font might have been chosen to express a certain style of the designer. Changing the font to default on my system even caused the layout to break because courier new (firefox default monospace) is a lot wider than courier.
(Even though i agree that Courier isn't the best choice for code/console/monospace, neither in terms of design or readability)