Git

Distributed version control

A whirlwind minitour - Dan Fitch

Minitour

  • How git works
  • Simple git workflow
  • The stage and how not to get confused
  • Different clients
  • Security
  • Using git to do various stuff

How git works

  • Distributed
  • What else is different from SVN?
    • Faster at almost every operation
    • Way more efficient at disk usage
    • Better than SVN at branching and merging
    • You can work offline (not usually useful here, but it can be!)
    • Easy to collaborate using different merge workflows
    • Easy to share prototype work in branches

Simple git workflow

add OR rm

commit [-m]

push

(pull OR fetch, then rebase)

checkout

does not mean the same thing as in SVN

The three trees:

Working directory

Index (stage)

HEAD (of master branch)

(It's simpler than it sounds)

Clients

  • The command line
  • git-gui
  • VS2015
  • SparkleShare

Security

  • How does Phabricator fit into this?
  • No NTLM
  • SSH and keys
  • How painful is this?

Level 1 Git Wizard Spells

  • Branching and merging
  • Simple ways to compare branches
  • Relative refs and refspecs
  • Simple ways to look back in time

Level 2 Git Wizard Spells

  • Cherry-picking hunks and commits
  • rebase
  • rebase -i: interactive rebase for rewriting history!
  • Config tricks: Fancy logs
  • More complex workflow options

THE END

(or, Q&A)

Thanks for your time. Let's share more knowledge, yo!