Slide 1

Slide 1 text

l e v e l u p An  introductory  exploration  of  the  Git  tool  set © 2012, GitHub, Inc. and Friday, January 25, 13

Slide 2

Slide 2 text

Ben Straub github.com/ben Friday, January 25, 13

Slide 3

Slide 3 text

Configuration Line endings Friday, January 25, 13

Slide 4

Slide 4 text

line endings Friday, January 25, 13

Slide 5

Slide 5 text

Friday, January 25, 13

Slide 6

Slide 6 text

VS Friday, January 25, 13

Slide 7

Slide 7 text

Friday, January 25, 13

Slide 8

Slide 8 text

VS LF CRLF Friday, January 25, 13

Slide 9

Slide 9 text

default is to do nothing Friday, January 25, 13

Slide 10

Slide 10 text

http://help.github.com/dealing-with-lineendings/ Friday, January 25, 13

Slide 11

Slide 11 text

# Do this on OS X and Linux git config --global core.autocrlf input # Do this on Windows git config --global core.autocrlf true Friday, January 25, 13

Slide 12

Slide 12 text

Configuration Commit Message Editor Friday, January 25, 13

Slide 13

Slide 13 text

Friday, January 25, 13

Slide 14

Slide 14 text

Friday, January 25, 13

Slide 15

Slide 15 text

? Used the VI editor? Friday, January 25, 13

Slide 16

Slide 16 text

✓Used the VI editor? Friday, January 25, 13

Slide 17

Slide 17 text

I y ;WQ Friday, January 25, 13

Slide 18

Slide 18 text

an alternate editor? Friday, January 25, 13

Slide 19

Slide 19 text

GitPad wraps Notepad (or $EDITOR) Friday, January 25, 13

Slide 20

Slide 20 text

GitPad wraps Notepad (or $EDITOR) O ption 1 Friday, January 25, 13

Slide 21

Slide 21 text

http://github.com/github/GitPad O ption 1 Friday, January 25, 13

Slide 22

Slide 22 text

Run GitPad ...registers & wraps Notepad as the editor O ption 1 Friday, January 25, 13

Slide 23

Slide 23 text

Git-specific configuration option Friday, January 25, 13

Slide 24

Slide 24 text

Git-specific configuration option O ption 2 Friday, January 25, 13

Slide 25

Slide 25 text

#for TextMate on Mac git config --global core.editor "mate -w" #for Notepad2 on Windows git config --global core.editor "notepad2.exe" #for emacs on Linux git config --global core.editor "emacs" O ption 2 Friday, January 25, 13

Slide 26

Slide 26 text

O ption 2 Friday, January 25, 13

Slide 27

Slide 27 text

Workflows Usage Models Friday, January 25, 13

Slide 28

Slide 28 text

Central Repo C e n t r a l i z e d Friday, January 25, 13

Slide 29

Slide 29 text

Blessed Repo D i c t a t o r s h i p Friday, January 25, 13

Slide 30

Slide 30 text

Blessed Repo D i c t a t o r s h i p Friday, January 25, 13

Slide 31

Slide 31 text

Blessed Repo D i c t a t o r s h i p Friday, January 25, 13

Slide 32

Slide 32 text

Blessed Repo D i c t a t o r s h i p Friday, January 25, 13

Slide 33

Slide 33 text

Blessed Repo D i c t a t o r s h i p Friday, January 25, 13

Slide 34

Slide 34 text

Certified Repo Development Repo n t e g r a t i o n M a n a g e d Continuous Integration Server Friday, January 25, 13

Slide 35

Slide 35 text

Certified Repo Development Repo n t e g r a t i o n M a n a g e d Continuous Integration Server Friday, January 25, 13

Slide 36

Slide 36 text

Certified Repo Development Repo n t e g r a t i o n M a n a g e d Continuous Integration Server Friday, January 25, 13

Slide 37

Slide 37 text

Certified Repo Development Repo n t e g r a t i o n M a n a g e d Continuous Integration Server Friday, January 25, 13

Slide 38

Slide 38 text

C u s t o m + P u b l i c C o n t r i b ☚ Private Public ☛ GitHub Friday, January 25, 13

Slide 39

Slide 39 text

C u s t o m + P u b l i c C o n t r i b ☚ Private Public ☛ GitHub Friday, January 25, 13

Slide 40

Slide 40 text

C u s t o m + P u b l i c C o n t r i b Customized ☚ Private Public ☛ GitHub Friday, January 25, 13

Slide 41

Slide 41 text

C u s t o m + P u b l i c C o n t r i b Customized ☚ Private Public ☛ GitHub Friday, January 25, 13

Slide 42

Slide 42 text

Mirror Development Repo M i r r o r e d Mirror Certified Repo Friday, January 25, 13

Slide 43

Slide 43 text

Mirror Development Repo M i r r o r e d Mirror Certified Repo Friday, January 25, 13

Slide 44

Slide 44 text

Fundamentals Hashes Friday, January 25, 13

Slide 45

Slide 45 text

centralized VCSs use sequential revision numbers Friday, January 25, 13

Slide 46

Slide 46 text

Git uses a SHA-1 hash Friday, January 25, 13

Slide 47

Slide 47 text

Friday, January 25, 13

Slide 48

Slide 48 text

40 hex characters (20 bytes) Friday, January 25, 13

Slide 49

Slide 49 text

9AB223D28B1AA46EF1780B22F304982E39872C34 Friday, January 25, 13

Slide 50

Slide 50 text

9AB223D28B1AA46EF1780B22F304982E39872C34

This is a test

Friday, January 25, 13

Slide 51

Slide 51 text

This is a test

9AB223D28B1AA46EF1780B22F304982E39872C34 Friday, January 25, 13

Slide 52

Slide 52 text

use as little of it as is unique Friday, January 25, 13

Slide 53

Slide 53 text

Fundamentals Objects & Refs Friday, January 25, 13

Slide 54

Slide 54 text

‣Blob ‣Tree ‣Commit ‣Tag Friday, January 25, 13

Slide 55

Slide 55 text

tree tree: 7e8b1 web blob: 9ab16 index.html a10b3 tree blob: 8d162 logo.jpg blob: 51d22 draw.js 7e8b1 commit tree: a10b3 parent: nil author: Fird committer: Matthew message: Major refactoring of the web content. c67db blob 9ab16 blob //Some more javascript var renderSize 51d22 blob 7D 8D B3 7F BD 12 9F E9 7B 78 9D 3F 5C A6 72 CB 8d162 Friday, January 25, 13

Slide 56

Slide 56 text

tree tree: 7e8b1 web blob: 9ab16 index.html a10b3 tree blob: 8d162 logo.jpg blob: 51d22 draw.js 7e8b1 commit tree: a10b3 parent: nil author: Fird committer: Matthew message: Major refactoring of the web content. c67db blob 9ab16 blob //Some more javascript var renderSize 51d22 blob 7D 8D B3 7F BD 12 9F E9 7B 78 9D 3F 5C A6 72 CB 8d162 Friday, January 25, 13

Slide 57

Slide 57 text

tree tree: 7e8b1 web blob: 9ab16 index.html a10b3 tree blob: 8d162 logo.jpg blob: 51d22 draw.js 7e8b1 commit tree: a10b3 parent: nil author: Fird committer: Matthew message: Major refactoring of the web content. c67db blob 9ab16 blob //Some more javascript var renderSize 51d22 blob 7D 8D B3 7F BD 12 9F E9 7B 78 9D 3F 5C A6 72 CB 8d162 Friday, January 25, 13

Slide 58

Slide 58 text

tree tree: 7e8b1 web blob: 9ab16 index.html a10b3 tree blob: 8d162 logo.jpg blob: 51d22 draw.js 7e8b1 commit tree: a10b3 parent: nil author: Fird committer: Matthew message: Major refactoring of the web content. c67db blob 9ab16 blob //Some more javascript var renderSize 51d22 blob 7D 8D B3 7F BD 12 9F E9 7B 78 9D 3F 5C A6 72 CB 8d162 Friday, January 25, 13

Slide 59

Slide 59 text

tree tree: 7e8b1 web blob: 9ab16 index.html a10b3 tree blob: 8d162 logo.jpg blob: 51d22 draw.js 7e8b1 commit tree: a10b3 parent: nil author: Fird committer: Matthew message: Major refactoring of the web content. c67db blob 9ab16 blob //Some more javascript var renderSize 51d22 blob 7D 8D B3 7F BD 12 9F E9 7B 78 9D 3F 5C A6 72 CB 8d162 Friday, January 25, 13

Slide 60

Slide 60 text

tree tree: 7e8b1 web blob: 9ab16 index.html a10b3 tree blob: 8d162 logo.jpg blob: 51d22 draw.js 7e8b1 commit tree: a10b3 parent: nil author: Fird committer: Matthew message: Major refactoring of the web content. c67db blob 9ab16 blob //Some more javascript var renderSize 51d22 blob 7D 8D B3 7F BD 12 9F E9 7B 78 9D 3F 5C A6 72 CB 8d162 Friday, January 25, 13

Slide 61

Slide 61 text

tree tree: 7e8b1 web blob: 9ab16 index.html a10b3 tree blob: 8d162 logo.jpg blob: 51d22 draw.js 7e8b1 commit tree: a10b3 parent: nil author: Fird committer: Matthew message: Major refactoring of the web content. c67db blob 9ab16 blob //Some more javascript var renderSize 51d22 blob 7D 8D B3 7F BD 12 9F E9 7B 78 9D 3F 5C A6 72 CB 8d162 Friday, January 25, 13

Slide 62

Slide 62 text

tree tree: 7e8b1 web blob: 9ab16 index.html a10b3 tree blob: 8d162 logo.jpg blob: 51d22 draw.js 7e8b1 commit tree: a10b3 parent: nil author: Fird committer: Matthew message: Major refactoring of the web content. c67db blob 9ab16 blob //Some more javascript var renderSize 51d22 blob 7D 8D B3 7F BD 12 9F E9 7B 78 9D 3F 5C A6 72 CB 8d162 Friday, January 25, 13

Slide 63

Slide 63 text

tree tree: 7e8b1 web blob: 9ab16 index.html a10b3 tree blob: 8d162 logo.jpg blob: 51d22 draw.js 7e8b1 commit tree: a10b3 parent: nil author: Fird committer: Matthew message: Major refactoring of the web content. c67db blob 9ab16 blob //Some more javascript var renderSize 51d22 blob 7D 8D B3 7F BD 12 9F E9 7B 78 9D 3F 5C A6 72 CB 8d162 Friday, January 25, 13

Slide 64

Slide 64 text

v1 v2 v3 commit tree: 9a87b parent: nil author: Fird committer: Matthew message: Major refactoring of the Javascript rendering engine. c67db commit tree: b22c1 parent: c67db author: Tim committer: Fird message: Minor update to HTML 9bd21 commit tree: b22c1 parent: 9bd21 author: Johnny committer: Joe message: New language transations 1c2d7 Friday, January 25, 13

Slide 65

Slide 65 text

v1 v2 v3 commit tree: 9a87b parent: nil author: Fird committer: Matthew message: Major refactoring of the Javascript rendering engine. c67db commit tree: b22c1 parent: c67db author: Tim committer: Fird message: Minor update to HTML 9bd21 commit tree: b22c1 parent: 9bd21 author: Johnny committer: Joe message: New language transations 1c2d7 Friday, January 25, 13

Slide 66

Slide 66 text

v1 v2 v3 commit tree: 9a87b parent: nil author: Fird committer: Matthew message: Major refactoring of the Javascript rendering engine. c67db commit tree: b22c1 parent: c67db author: Tim committer: Fird message: Minor update to HTML 9bd21 commit tree: b22c1 parent: 9bd21 author: Johnny committer: Joe message: New language transations 1c2d7 Friday, January 25, 13

Slide 67

Slide 67 text

v1 v2 v3 commit tree: 9a87b parent: nil author: Fird committer: Matthew message: Major refactoring of the Javascript rendering engine. c67db commit tree: b22c1 parent: c67db author: Tim committer: Fird message: Minor update to HTML 9bd21 commit tree: b22c1 parent: 9bd21 author: Johnny committer: Joe message: New language transations 1c2d7 Friday, January 25, 13

Slide 68

Slide 68 text

v1 v2 v3 commit tree: 9a87b parent: nil author: Fird committer: Matthew message: Major refactoring of the Javascript rendering engine. c67db commit tree: b22c1 parent: c67db author: Tim committer: Fird message: Minor update to HTML 9bd21 commit tree: b22c1 parent: 9bd21 author: Johnny committer: Joe message: New language transations 1c2d7 Friday, January 25, 13

Slide 69

Slide 69 text

v1 v2 v3 commit tree: 9a87b parent: nil author: Fird committer: Matthew message: Major refactoring of the Javascript rendering engine. c67db commit tree: b22c1 parent: c67db author: Tim committer: Fird message: Minor update to HTML 9bd21 commit tree: b22c1 parent: 9bd21 author: Johnny committer: Joe message: New language transations 1c2d7 Friday, January 25, 13

Slide 70

Slide 70 text

v1 v2 v3 commit tree: 9a87b parent: nil author: Fird committer: Matthew message: Major refactoring of the Javascript rendering engine. c67db commit tree: b22c1 parent: c67db author: Tim committer: Fird message: Minor update to HTML 9bd21 commit tree: b22c1 parent: 9bd21 author: Johnny committer: Joe message: New language transations 1c2d7 Friday, January 25, 13

Slide 71

Slide 71 text

v1 v2 v3 commit tree: 9a87b parent: nil author: Fird committer: Matthew message: Major refactoring of the Javascript rendering engine. c67db commit tree: b22c1 parent: c67db author: Tim committer: Fird message: Minor update to HTML 9bd21 commit tree: b22c1 parent: 9bd21 author: Johnny committer: Joe message: New language transations 1c2d7 Friday, January 25, 13

Slide 72

Slide 72 text

RELEASE_1.0 HEAD bug979branch commit c67db commit 9bd21 commit 1c2d7 commit 8c2d1 commit 1bdcd commit 2daa1 Friday, January 25, 13

Slide 73

Slide 73 text

RELEASE_1.0 HEAD bug979branch commit c67db commit 9bd21 commit 1c2d7 commit 8c2d1 commit 1bdcd commit 2daa1 Friday, January 25, 13

Slide 74

Slide 74 text

RELEASE_1.0 HEAD bug979branch commit c67db commit 9bd21 commit 1c2d7 commit 8c2d1 commit 1bdcd commit 2daa1 Friday, January 25, 13

Slide 75

Slide 75 text

RELEASE_1.0 HEAD bug979branch commit c67db commit 9bd21 commit 1c2d7 commit 8c2d1 commit 1bdcd commit 2daa1 Friday, January 25, 13

Slide 76

Slide 76 text

RELEASE_1.0 HEAD bug979branch commit c67db commit 9bd21 commit 1c2d7 commit 8c2d1 commit 1bdcd commit 2daa1 Friday, January 25, 13

Slide 77

Slide 77 text

RELEASE_1.0 HEAD bug979branch commit c67db commit 9bd21 commit 1c2d7 commit 8c2d1 commit 1bdcd commit 2daa1 Friday, January 25, 13

Slide 78

Slide 78 text

There’s more http://git.io/D51kRA https://joind.in/7777 Friday, January 25, 13