Git

Git is a distributed Version Control System used heavily by the Linux Kernel Developer Community and many other open source projects,

Git is distributed: every developer has a copy of the whole project and its history, this doubles as backup as well as makes operations super fast since you don't need to go through network.

Git is about series of patches that work in a tree form, each tree leaf is a branch. Branches are easy and fast, you can create and delete as much as you wish and you can optionally push them upstream, so it's advised that development happens in your own tree and that you rebase your work on top of upstream 'master', that way you get a consistent sequence of patches to implement features. With Git you can go back in history and edit commits, delete them, reorder or even merge lots of commits into a single commit for publishing, usually required for projects that employ code review.

See Flameman/git for a Tutorial.

= Additional Resources =
 * GIT project home page: http://git-scm.org/
 * GIT for SVN users: http://git.or.cz/course/svn.html
 * Pratical Guide to Using Git, a tutorial given by the excellent kernel developer James Bottomley at the Ottawa Linux Symposium 2008
 * Google Tech Talk: Linus' Torvalds on Git
 * Kernel Development with Git
 * Kernel Hackers' Guide to Git
 * Linux: Debugging with 'git bisect'
 * Git Magic (very comprehensive Guide)
 * Git Guide for Linux Wireless Users and Developers

= Git Hosting = These sites provide (free) git hosting services:
 * http://repo.or.cz/
 * http://gitorious.org/
 * http://github.com/
 * http://codaset.com/
 * http://unfuddle.com/
 * http://www.codebasehq.com/