Slide 1

Slide 1 text

͍͖͞ΐ͏ͷ.gitconfig 2012/11/20 ఱԼҰ.gitconfigେձ @ama_ch

Slide 2

Slide 2 text

gitΛ࢖͏ͳΒආ͚ͯ ௨Εͳ͍.gitconfig

Slide 3

Slide 3 text

Ͳ͏ͯ͠·͔͢ʁ • ࣗ෼ͰΰϦΰϦॻ͘ • ਓͷΛ΋Β͏ • άάͬͯίϐϖ

Slide 4

Slide 4 text

࠷ॳ͸ԿΛॻ͍ͨΒ ྑ͍͔෼͔Βͳ͍

Slide 5

Slide 5 text

Web্ͷઃఆΛίϐ ϖ͗ͯ͢͠ΧΦε

Slide 6

Slide 6 text

࢖Θͳ͍ΤΠϦΞε ͕େྔ

Slide 7

Slide 7 text

.gitconfigͷਏ͍ͱ͜Ζ • ͱ͖ͬͭʹ͍͘ • ίϐϖͰԚΕΔ • ࣗ෼ͰΧελϚΠζ͢Δࠒʹ͸೺ Ѳ͖͠Εͳ͍ • ෳ਺ϚγϯͰڞ༗͍ͨ͠

Slide 8

Slide 8 text

ϕετϓϥΫςΟε͕΄͍͠

Slide 9

Slide 9 text

• .gitconfigͷϕετϓϥΫςΟεΛ୳ٻ͠ ·ͨ͠

Slide 10

Slide 10 text

• .gitconfigͷϕετϓϥΫςΟεΛ୳ٻ͠ ·ͨ͠ • ͳ͔ͥγΣϧ؀ڥΛશͯݟ௚͢͜ͱʹ ͳΓ·ͨ͠

Slide 11

Slide 11 text

• .gitconfigͷϕετϓϥΫςΟεΛ୳ٻ͠ ·ͨ͠ • ͳ͔ͥγΣϧ؀ڥΛશͯݟ௚͢͜ͱʹ ͳΓ·ͨ͠ • .gitconfig͸େͨ͠໰୊͡Όͳ͍ʂ

Slide 12

Slide 12 text

• .gitconfigͷϕετϓϥΫςΟεΛ୳ٻ͠ ·ͨ͠ • ͳ͔ͥγΣϧ؀ڥΛશͯݟ௚͢͜ͱʹ ͳΓ·ͨ͠ • .gitconfig͸େͨ͠໰୊͡Όͳ͍ʂ • ϕετγΣϧ؀ڥΛڞ༗͠·͢ʂ

Slide 13

Slide 13 text

oh-my-zsh • zshͷϕετϓϥΫςΟεू • ๛෋ͳϓϥάΠϯ • ϦονͳPROMPTςʔϚ • gitͷϒϥϯνදࣔͱ͔΋Ͱ͖Δ • ϓϥάΠϯػߏͰಠࣗઃఆ΋

Slide 14

Slide 14 text

ϦονͳPROMPT http://zshthem.es/

Slide 15

Slide 15 text

ϓϥάΠϯػߏ .zshrc git.plugin.zsh ϩʔυ

Slide 16

Slide 16 text

• ͨͩ͠oh-my-zshʹ.gitconfigͷઃఆ ͸ؚ·Εͳ͍ • ࠷ॳͷ.gitconfig͸άάΔ͔νʔϜͰ ڞ༗͢Δ • ࠷ۙ͸ެ։ͯ͠Δਓ΋ଟ͍

Slide 17

Slide 17 text

.gitconfigͱalias • .gitconfigʹalias͸جຊॻ͔ͳ͍ • “git alias”͸௕͗͢Δ • alias͸γΣϧͰॻ͍ͨํ͕ศར • .gitconfig͸ิॿతͳ࢖͍ํʹཹΊΔ

Slide 18

Slide 18 text

ྫ [alias] s = status --short --branch alias gs=‘git status --short --branch’ $ git s $ gs

Slide 19

Slide 19 text

γΣϧͰaliasΛॻ͘ϝϦοτ • ΑΓ୹໊͍લ͕͚ͭΒΕΔ • γΣϧεΫϦϓτΛఆٛͯ͠࢖͍ ճͤΔ • ಡΈ΍͍͢ • ෼ׂ͠΍͍͢

Slide 20

Slide 20 text

Α͘࢖͏aliasᶃ gc => git commit -v gco => git checkout gba => git branch -a ga => git add gm => git merge

Slide 21

Slide 21 text

Α͘࢖͏aliasᶄ gf => get fetch gup => git fetch && git rebase ggpush => git push origin $(current_branch) grh => git reset HEAD grhh => git reset HEAD --hard

Slide 22

Slide 22 text

Α͘࢖͏aliasᶅ gl => git l => log --graph --(ུ) gd => git diff gdc => git diff --cached gr => git rebase

Slide 23

Slide 23 text

Α͘࢖͏aliasᶆ gs => git status --status --branch gsd => gs + git diff gsa => gs + git add gsco => gs + git checkout gsrh => gs + git reset HEAD

Slide 24

Slide 24 text

͜͜·Ͱͷ·ͱΊ • .gitconfig͸ਓͷΛύΫΔ • oh-my-zshΛ࢖͏ • oh-my-zshͷgitϓϥάΠϯΛ࢖͏ • ϓϥάΠϯΛॻ͘ • alias͸γΣϧʹॻ͘

Slide 25

Slide 25 text

gitͱଧͬͨΒෛ͚

Slide 26

Slide 26 text

dotfilesΛ؅ཧ͢Δ • dotfiles͸GitHubʹpush͓ͯ͘͠ͱ ଞͷϚγϯͰ΋࢖͍΍͍͢ • homesickͱ͔࢖͏ͱίϚϯυҰൃ ͰಉظͰ͖Δ

Slide 27

Slide 27 text

homesick • ೚ҙͷGitHubϦϙδτϦΛclone͠ ͯɺϦϙδτϦʹؚ·ΕΔdotfiles ͷsymlinkΛ࡞੒͢ΔRubyGem • ߋ৽ͱ্͔ॻ͖ʹ΋ରԠ

Slide 28

Slide 28 text

Πϯετʔϧ $ gem install homesick Ϋϩʔϯ $ homesick clone ama-ch/dotfiles γϯϘϦοΫϦϯΫ࡞੒ $ homesick symlink ama-ch/dotfiles ߋ৽ $ homesick pull ama-ch/dotfiles

Slide 29

Slide 29 text

·ͱΊ • .gitconfig͸ਓͷΛύΫΔ • oh-my-zshΛ࢖͏ • ϓϥάΠϯΛॻ͘ • dotfiles͸GitHubͰ؅ཧ͢Δ

Slide 30

Slide 30 text

ࢀߟ υοτϑΝΠϧ(https://github.com/ama-ch/dotfiles) oh-my-zshͱhomesickΛ࢖ͬͯdotfilesΛGitHubͰ؅ཧ ͢ΔΑ͏ʹͨ͠(http://ama-ch.hatenablog.com/entry/ 2012/09/23/201217)

Slide 31

Slide 31 text

͋Γ͕ͱ͏͍͟͝·ͨ͠