A collection of useful resources for getting up to speed on git and GitHub. Thanks to Garret Christensen for his talk at The Hacker Within at UC Berkeley for some of these resources.
Here's the relevant xkcd comic.
- Software Carpentry has a good git tutorial for new users.
- Atlassian has good resources too, although note that some of it is based on Bitbucket which is an alternative to GitHub.
- Roger Dudler has a visually pleasing simple summary.
- Guides for the GitHub desktop (GUI) application.
- Think Like (a) Git by Sam Livingston-Gray is an intermediate tutorial, for if you already know how to make a repo and add commits, but struggle with more complex operations.
- See this wikimedia diagram
- tpope explains what a commit message should look like
- git-flow by Vincent Driessen (1/5/2010) describes a formalized workflow using
master
,develop
,release
branch, feature branches, and hotfixes. - github-flow by Scott Chacon (8/31/2011) describes a simpler workflow, using only
master
and feature branches. Continuous integration and GitHub pull requests ensure that features are stable before merging intomaster
.
- Changing History, or how to Git Pretty by Justin Hileman (11/?/2011) is a thorough explanation of how to fix whatever went wrong in your commit history, culminating in an awesome flowchart. (Also summarized in a presentation)
- Pro Git chapter on changing history
- The Thing About Git by Ryan Tomayko (4/8/2008) gives a good tutorial for
git add --patch
.