http://lwn.net/Articles/145125/ From: Ryan Anderson To: git@vger.kernel.org Subject: Git 1.0 Synopis (Draft v2) Date: Wed, 27 Jul 2005 06:01:23 -0400 Source Code Management with Git Git, sometimes called "global information tracker", is a "directory content manager". Git has been designed to handle absolutely massive projects with speed and efficiency, and the release of the 2.6.12 and (soon) the 2.6.13 version of the Linux kernel would indicate that it does this task well. Git falls into the category of distributed source code management tools, similar to Arch or Darcs (or, in the commercial world, BitKeeper). Every Git working directory is a full-fledged repository with full revision tracking capabilities, not dependent on network access to a central server. Git uses the SHA1 hash algorithm to provide a content-addressable pseudo filesystem, complete with its own version of fsck. o Speed of use, both for the project maintainer, and the end-users, is a key development principle. o The history is stored as a directed acyclic graph, making long-lived branches and repeated merging simple. o A collection of related projects are building on the core Git project, either to provide an easier to use interface on top (StGit, Cogito, qgit, gitk, gitweb), or to take some of the underlying concepts and reimplement them directly into another system (Arch 2.0, Darcs-git). o Two, interchangeable, on-disk formats are used: o An efficient, packed format that saves spaced and network bandwidth. o An unpacked format, optimized for fast writes and incremental work. To get a copy of Git: Daily snapshots are available at: http://www.codemonkey.org.uk/projects/git-snapshots/git/ (Thanks to Dave Jones) Source tarballs and RPMs at: http://www.kernel.org/pub/software/scm/git/ Deb packages at: Or via Git itself: git clone http://www.kernel.org/pub/scm/git/git.git/ git clone rsync://rsync.kernel.org/pub/scm/git/git.git/ (rsync is generally faster for an initial pull) Git distributions contain a tutorial in the Documentation subdirectory. Additionally, the Kernel-Hacker's Git Tutorial at http://linux.yyz.us/git-howto.html may be useful. (Thanks to Jeff Garzik for that document) Git development takes place on the Git mailing list. To subscribe, send an email with just "subscribe git" in the body to majordomo@vger.kernel.org. Mailing list archives are available at http://marc.theaimsgroup.com/?l=git Git results from the inspiration and frustration of Linus Torvalds, and the enthusiastic help of over 300 participants on the development mailing list.[1] It is maintained by Junio C Hamano . 1 - Generated with the following, in a maildir folder: find . -type f | xargs grep -h "^From:" | perl -ne \ 'tr#A-Z#a-z#; m#<(.*)># && print $1,"\n";' | sort -u | wc -l (This summary written by Ryan Anderson . Please bug him with any corrections or complaints.)