Upgrade to Pro — share decks privately, control downloads, hide ads and more …

So that's how git does that!

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers. →

So that's how git does that!

A deeper look at git's object structure and internals. Not much in the slides, more in the demos. Search YouTube for that.

Avatar for Michael Timbrook

Michael Timbrook

September 05, 2013

Other Decks in Technology

Transcript

  1. Michael Timbrook Name 7imbrook Alias School - Major RIT -

    Software Engineering Email [email protected] 6JCPMUHQTDGKPIJGTG Thursday, September 5, 13
  2. What is git? •Distributed Version Control System •A set of

    tools to manipulate your history and branches •Versioning commands: add, commit •Workflow commands: merge, rebase Thursday, September 5, 13
  3. So what is this? .git ├── HEAD ├── objects │

    ├── 3f │ │ └── 6ec309661d6702f9ca4f95935bf9b8b6cc7a8d │ ├── 58 │ │ └── b92631124e5a7e3f7cf7f56c36af1fd7a06213 │ ├── 59 │ │ └── b748577ee22e2cf37291a39521bbd61856ed8f │ ├── info │ └── pack └── refs ├── heads │ └── master └── tags Thursday, September 5, 13
  4. So we know what it means to be a git

    repository Collection of objects and a system for naming them Thursday, September 5, 13
  5. So we know what it means to be a git

    repository Collection of objects and a system for naming them DEMO Thursday, September 5, 13
  6. Commit ef0d4 Tree Parent Commit 6dsj3 Tree Parent Commit kksu8

    Tree Parent Commit fb0s2 Tree Parent Commit h24d7 Tree Parent Rebasing? Thursday, September 5, 13
  7. Commit ef0d4 Tree Parent Commit 6dsj3 Tree Parent Commit kksu8

    Tree Parent Commit fb0s2 Tree Parent Commit h24d7 Tree Parent Rebasing? • “Should I rebase or should I merge?” Thursday, September 5, 13
  8. Commit ef0d4 Tree Parent Commit 6dsj3 Tree Parent Commit kksu8

    Tree Parent Commit fb0s2 Tree Parent Commit h24d7 Tree Parent Rebasing? • “Should I rebase or should I merge?” • The question is what do I want my history to look like? Thursday, September 5, 13
  9. Commit ef0d4 Tree Parent Commit 6dsj3 Tree Parent Commit kksu8

    Tree Parent Commit fb0s2 Tree Parent Commit h24d7 Commit huse2 Tree Parents Commit ef0d4 Tree Parent Commit 6dsj3 Tree Parent Commit kksu8 Tree Parent Commit frs56 Tree Parent Commit d52gc Tree Parent Commit he0l2 Tree Parent Thursday, September 5, 13
  10. Thanks! Slides at: speakerdeck.com/7imbrook Special Thanks to Tim Berglund, GitHub

    His talk Git from the bits up Thursday, September 5, 13