Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tree: 12377e6c2e
Fetching contributors…

Cannot retrieve contributors at this time

file 107 lines (91 sloc) 8.65 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

<html xmlns="" xml:lang="en" lang="en">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<script type="text/javascript" src="js/jquery-1.2.6.pack.js"></script>
<script type="text/javascript" src="js/thickbox-compressed.js"></script>
<script type="text/javascript" src="js/jquery.corner.js"></script>

<link rel="stylesheet" href="css/screen.css" type="text/css" media="screen, projection">
  <link rel="stylesheet" href="css/print.css" type="text/css" media="print">
  <!--[if IE]>
<link rel="stylesheet" href="css/ie.css" type="text/css" media="screen, projection">
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" charset="utf-8"/>
  <link rel="stylesheet" href="css/thickbox.css" type="text/css" media="screen"/>

  <div class="container">

    <div class="span-21" id="header">
      <div class="span-10">
        <a href="/"><img src="images/learn.github.png" alt="github learn logo" /></a>

      <div class="span-11 last">
        <div id="links">
          <a href="">home</a>
          <a href="">login</a>
          <a href="">signup!</a>
    <div class="span-21" id="welcome">
      <h1>Welcome to the GitHub Learning site</h1>
      <p>Here we have tried to compile the
      best online learning Git resource available. There are a number of
      articles and screencasts, written and arranged to try to make learning
      Git as quick and easy as possible.</p>
      <p>This site is a work in progress.</p>

    <div class="span-7" id="start">
      <div class="button red">
        <a href="p/intro.html">Start the Full Course</a>

    <div class="span-7" id="how">
      <div class="button green">
        10 Minute Crash Course
    <div class="span-7 last" id="why">
      <div class="button blue">
        "Why Git" in 5 Minutes
    <div class="span-21 last">
      <br clear="both"/>
    <div class="span-5"><h2>Beginner</h2><div class='episode'><b><a href="p/intro.html">Introduction To Git</a></b><p>What Git is, why you would want to use it and where to get it and learn about it.</p></div><div class='episode'><b><a href="p/setup.html">Setup and Initialization</a></b><p>Setup your Git environment, then create a new Git repository and clone an existing one.</p></div><div class='episode'><b><a href="p/normal.html">Normal Workflow</a></b><p>Synchronize with a remote repository, make changes, then stage and commit them.</p></div><div class='episode'><b><a href="p/branching.html">Basic Branching and Merging</a></b><p>Create and work on topic and long running branches, merge between them and delete them.</p></div><div class='episode'><b><a href="p/tagging.html">Git Tagging</a></b><p>Create signed, unsigned or lightweight tags to permanently mark important points in your project history.</p></div><div class='episode'><b><a href="p/log.html">Git Log</a></b><p>Browse your project history, find specific commits and visualize the branching and merging actions.</p></div><div class='episode'><b><a href="p/diff.html">Git Diff</a></b><p>Show differences between different versions of your projects or specific files within your project.</p></div></div><div class="span-5"><h2>Intermediate</h2><div class='episode'><b>Distributed Git</b><p>Fetch, merge, pull and push between multiple remote repositories.</p></div><div class='episode'><b><a href="p/rebasing.html">Rebasing</a></b><p>Replay changes from one branch onto another branch to preserve a linear history.</p></div><div class='episode'><b>Stashing</b><p>Temporarily save changes to your working directory and staging area without having to commit, then reapply the changes later.</p></div><div class='episode'><b>Interactive Adding</b><p>Stage and unstage changes to files or partial files with an interactive Git tool.</p></div><div class='episode'><b><a href="p/undoing.html">Undoing</a></b><p>Revert, unmodify or unstage a file or project state at any point.</p></div><div class='episode'><b>Amending Commits</b><p>Change the latest commit message, or redo the last commit by adding or removing files from it.</p></div><div class='episode'><b>Interactive Rebasing</b><p>Rebase multiple files interactively, squashing, reordering or amending commits in between.</p></div><div class='episode'><b>Customizing Git</b><p>Setup aliases for common commands and other personal options in Git - autocompletion, bash branch, colors and more.</p></div></div><div class="span-5"><h2>Advanced</h2><div class='episode'><b>Filter Branch</b><p>Modify large sections of your commit history at once, changing emails, names or files globally.</p></div><div class='episode'><b>Maintaining Git</b><p>Learn the fsck and gc commands to diagnose problems and keep your repository small.</p></div><div class='episode'><b>The Git Reflog</b><p>Browse the history of your local references even if they're not referenced anywhere else anymore.</p></div><div class='episode'><b>Data Recovery</b><p>Find lost commits or branches and restore them, or recover from partial database corruption.</p></div><div class='episode'><b>Git Hooks</b><p>Learn the client and server side pre and post action hooks and some useful example scripts to use with them.</p></div><div class='episode'><b>Revision Selection</b><p>Selecting individual commits or ranges of commits using helpful Git shorthands.</p></div><div class='episode'><b>Git Internals</b><p>Explore the internal workings of Git - the different object types and how to view the raw data via several useful plumbing commands.</p></div><div class='episode'><b>Git Submodules</b><p>Submodule usage and other tips for keeping subprojects in your Git repository.</p></div></div><div class="span-6 last"><h2>Special Interest</h2><div class='episode'><b>Git and Windows - General</b><p>Install and use Git on a Windows environment using the default mSysGit tools.</p></div><div class='episode'><b>Git and Windows - Extensions</b><p>Installing and using the Git Extensions shell extensions tools on Windows.</p></div><div class='episode'><b><a href="p/git-svn.html">Git and Subversion</a></b><p>Using the git-svn client with a Subversion server. Specifically for existing SVN users, how Git is a better Subversion client than Subversion.</p></div><div class='episode'><b>Migrating from Subversion</b><p>Ready to move your project from Subversion? A few ways to do the migration, from hosted services to really custom methods.</p></div><div class='episode'><b>Git and Textmate</b><p>Using Git and GitHub from Textmate using the TM Git bundle.</p></div><div class='episode'><b>Git and Capistrano</b><p>Deploying Git projects using the Capistrano deployment tool, including how to deploy from GitHub.</p></div></div>

    <div id="footer" class="span-21">
      <div class="info span-12">
        <div class="links">
          <a href="">T-Shirts</a> |
          <a href="">Blog</a> |
          <a href="">Support</a> |
          <a href="">Git Training</a> |
          <a href="">Contact</a> |
          <a href="">Google Group</a> |
          <a href="">Status</a>
        <div class="company">
          GitHub is <a href="">Logical Awesome</a> &copy;2009 | <a href="">Terms of Service</a> | <a href="">Privacy Policy</a>
      <div class="fork span-7">
        This website is <a href="">open source</a>.
        Please help us by forking the project and adding to it.


  <script type="text/javascript">
  var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
  document.write(unescape("%3Cscript src='" + gaJsHost + "' type='text/javascript'%3E%3C/script%3E"));
  <script type="text/javascript">
  var pageTracker = _gat._getTracker("UA-3769691-2");

Something went wrong with that request. Please try again.