Source Code Management Systems; Git

Copyright © 2013 Bart Massey

  • SCMS

    • e.g. Git, SVN, Bazaar, Darcs, Mercurial, etc.
    • Allow for
      • Version history
      • Rollbacks
      • Shared development
      • Diagnostic assistance
      • Rationale capture
      • Nonlinear development
    • Structure
      • Repo: Organized collection of commits
      • Working Directory
    • Two kinds
      • Centralized
      • Distributed
  • Git

    • De facto standard for OSS: esp GitHub
    • Horrible learning curve
    • Practices
      • Start early
      • Idealized vs realistic history
      • Workflow
        • Pull at start of session
        • Commit often
        • Push when changes should be visible to world