Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
はじめてのGit #gitkyoto
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Hisateru Tanaka
February 16, 2013
Technology
2.9k
10
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
はじめてのGit #gitkyoto
Gitのゆるめな勉強会
ワークショップ進行スライド
Hisateru Tanaka
February 16, 2013
More Decks by Hisateru Tanaka
See All by Hisateru Tanaka
どうなる Remix 3
tanakahisateru
2
560
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
2
300
哲学史とモデリング
tanakahisateru
4
1k
オブジェクト指向宗教史
tanakahisateru
32
18k
ほげ言語にあってPHPにない機能
tanakahisateru
6
4k
君たちはどうプログラミングするか
tanakahisateru
16
3.2k
デバッグ用ロガーの注入どうする?
tanakahisateru
2
730
アンドキュメンテッド ちょうぜつソフトウェア 設計入門 「オブジェクト指向に定義はない」のか?
tanakahisateru
25
10k
ちょうぜつ改め21世紀ふつうのソフトウェア設計
tanakahisateru
14
8.8k
Other Decks in Technology
See All in Technology
DEFCON_CHV_CTF_Write-up.pdf
bata_24
0
130
AI活用の現在地、 ちゃんと見えてますか?/XPfest-2026
visional_engineering_and_design
0
180
AIに丸投げしないトイル削減 / Eliminating Toil Without Leaving It All to AI
kohbis
4
1.1k
AIで仕事のやり方を変える
matsu7874
3
1k
幾何アルゴリズムで なめらかなピン操作を / iOSDC Japan 2026 / smoothpin
kazumanagano
0
240
株式会社シーエーシー エンジニア向け会社紹介資料
cac
0
57k
ASTを使って影響範囲を特定する
nealle
0
140
AIとペアプロを始める。人とのペアプロをやめる。ペアプロの良さを改めて知る。もっと好きになった。 / Rediscovering Pair Programming
honyanya
1
330
Claude Code本って、 読む必要あるの?
oikon48
2
370
enechainの内製セルフサービスプラットフォーム
hiyosi
0
150
【視聴者参加型!】AWSセキュリティアンチパターンクイズ
syoshie
1
490
Where Is JetBrains AI Heading- — Central CLI, Air Alpha, and the Agentic Development Stack
x5gtrn
PRO
0
150
Featured
See All Featured
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
190
Odyssey Design
rkendrick25
PRO
2
800
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Why Our Code Smells
bkeepers
PRO
340
58k
Crafting Experiences
bethany
1
310
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
970
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
690
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Speed Design
sergeychernyshev
33
2.1k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
560
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
202
76k
Transcript
͡ΊͯͷGit ͨͿΜؔͰ͍ͪΜΏΔ͍Gitೖ
ͨͳ͔ͻͯ͞Δ @tanakahisateru Pinoco developer js-markdown-extra maintainer PHPTAL contributor Firebug translation
contributor Yii framework user ...and more OSS experienced
Կऀ͔ͱ͍͏ΛΘ ͔Γ͍͢ͱ͜Ͱ ͍͜ΕͰࠓͬͨਓ͕୭ͩͬ ͔ͨΕͳ͘ͳΓ·ͨ͠
ͦΜͳGitͷ͍͢͝ਓ͡Όͳ͍Ͱ͢ɻ GitHubͰඞཁͳ࠷ݶͷ͔ࣝ͋͠Γ·ͤΜɻ Θ͔Βͳ͍͜ͱ͙͢άάΓ·͢ɻ GitଞਓͱͬͯφϯϘͰ͠ΐͬͯࢥ͍·͢ɻ Θͨ͠ͱGit
ਓʹGitΛڭ͑Δͱ͜͏ͳͬͨ લ৬ͰɺσβΠφʔ(ίʔμʔ)ͷಉ྅ΫϥΠΞϯτʹGit Λڭ͑ͯͬͯΒͬͯ·ͨ͠ɻ σβΠφʔʮ͜Εͳ͔ͬͨΒࣄͰ͖ͳ͍ʯͬͯதಟʹͳ Γ·ͨ͠ɻ ΫϥΠΞϯτͱͷΓͱΓ͕εϜʔζʹͳΓ·ͨ͠ɻ
ڭ͑ͳ͖ΌଛͩΑ͜Ε
͜ͷηογϣϯͰ ϗϯτͷೖ͔Βͪΐͬͱ͚ͩ౿ΈࠐΜͰ࢝Ί·͢ɻ Έͳ͞Μ͕৬ͳΓऔҾઌͳΓͰɺڭ͢ΔଆͷਓʹͳΔ͙ Β͍ͷதಟʹ͢Δͷ͕ඪͰ͢ɻ(ॳ৺ऀͱ͔ؔͳ͍Ͱ͢) ڭΘΒͳͯ͘Θ͔ͬͯΔਓɺڭ͑ํͷώϯτΛύΫͬͯ ͍ͩ͘͞ɻGitଞਓͱͬͯφϯϘͰ͢ɻ
όʔδϣϯཧͬͯ? ࣮Έͳ͞ΜɺͨͿΜ͢ͰʹόʔδϣϯཧΛ͍ͬͯΔͱ ࢥ͍·͢Αɻ ໊Λ͚ͭͯϑΥϧμΛόοΫΞοϓ͢ΔΞϨɻ
None
͜ͷΜ·ͩΔؾ͋Δ
ʮͪΐͬͱෳҊݟͤͯΑʯ ʮ͑ͬ...ʯ
ʮͬͺΓલͷલͷ͕ྑ͔ͬͨʯ (Δؾͳ͘ͳ͖ͬͯͯΔײ)
ʮͬͱϑΟοΫεҊͰ͖ͨ...όλοʯ
ʮͬͦ͘͞Ͱѱ͍Μ͚ͩͲ͕͠...ʯ (นυϯͰ͢ΑͶ)
ޙ
Ͳͷࢠ͕Ͳͷࢠ͔͠Β...?
ख࡞ۀͷ᠘ ਓؒαϘΔ/যΔ/ؒҧ͑Δɻ ϑΥϧμͷલޙؔʹอূ͕ͳ͍ɻ ୭͕ԿΛͨ݁͠Ռͳͷ͔Θ͔Βͳ͍ɻ ϋʔυσΟεΫʹ΄ͱΜͲಉ͡༰ͷϑΥϧμͰ͖ͯɺ ͍͢͝ૣ͞Ͱ༰ྔΛѹഭͯ͘͠Δɻ
ͦΜͳ͋ͳͨ GitΛ͏ͱ
͜͏ͳΓ·͢
͞Βʹ͜͏ͳΓ·͢
ϑΥϧμͱͷ͕͍ͪ ୭͕ɺ͍ͭɺԿΛมߋͨ͠ͷ͔ཤྺʹΔɻ Ͳͷมߋ͕ͲΕΛݩʹͨ͠ͷ͔ɺॱ൪Λؒҧ͑ͳ͍ɻ ਖ਼ࣜͳ࠷৽൛͕Θ͔Δͱ͍͏େࣄ͞ɻ มߋใ͚ͩΛอଘ → ϋʔυσΟεΫΛѹഭ͠ͳ͍ɻ (ͳͷͰԕྀͳ͘όοΫΞοϓͰ͖Δ)
Subversion < Git ॳ৺ऀʹ(ͦͯ͠ଟকདྷͣͬͱ)Git͕Φεεϝɻ αʔόͷ४උ͕·ͩͰ࡞ۀΛ࢝ΊΒΕΔɻ FinderͰউखʹҠಈ/আ/໊લมߋΛͯ͠յΕͳ͍ɻ มߋཤྺͷࢀর͕ͱ͍ͯɻ ϓϥάΠϯ͕ͳ͍ͷͰਓʹΑͬͯػೳͷ͕ࠩग़ͳ͍ɻ (͜ΕMercurialʹର͢ΔϝϦοτ)
Ͳ͏ͤGitඞཁ
ΈΜͳGitHub ͬͱ͋ΔΑ
ͬͯΈΑ͏
Πϯετʔϧ ࠷৽ͷXcodeΛ͍ͬͯΔ ਓ͏ೖ͍ͬͯ·͢ɻ ͳ͍ਓͪ͜Β http://git-scm.com/
Ͱɺ࣍...
None
ͬͯɺ͜Θ͘ͳ͍͔Β
͜Ε͔ΒΖ͏ͱͯ͠Δ͜ͱ ʮGitίϚϯυͩʯͱ͍͏͜ͱΛͬͯΒ͍·͢ɻ ίϚϯυΛଧͪࠐΈͳ͕Β༻ޠΛ͓΅͑·͠ΐ͏ɻ ࣦഊͯ͠େৎɺతૢ࡞͡Όͳͯ͘ཧղͰ͢ɻ ֓೦Λཧղ͔ͯ͠ΒGUIɻ ͦͷͱ͖͏ɺίϚϯυΕ͍͍ͯͯɻ
< \コワクナイカラ/
͏͖͝·͔͢
ࣗͷ໊લΛઃఆ͠Α͏
࡞ۀऀͷ໊લࣗݾਃࠂͰ͢ɻ GitࣗͰউखʹ࢝ΊͨΓผͷαʔόʹҾӽͨ͠ΓͰ͖ΔͷͰɺ ୭͕࡞ۀ͔ͨ͠ͱ͍͏໊લαʔόͷೝূͱશʹผͳͷͰ͢ɻ
͜ͷ࿅शͰ͏ ιʔείʔυΛ...
http://www.initializr.com/ ύΫΓ·͢Ͷ
IEͱ͔Faviconͱ͔ΦϑͰ
μϯϩʔυ&ల։
͜Ε͕ॳ൛Ͱ͢
None
࡞ۀ͢ΔϑΥϧμΛ։͘ cd[εϖʔε]ͷ͋ͱɺλʔϛφϧʹ ϑΥϧμΛυϩοϓ͠·͢ɻ
͍·։͖·ͨ͠
ݱࡏλʔϛφϧͰ։͍͍ͯΔϑΥϧμΛʮΧ ϨϯτσΟϨΫτϦʯͱݴ͍·͢ɻ cd ͷޙʹύεΛࢦఆ͢ΔͱɺΧϨϯτσΟϨ ΫτϦΛม͑Δ͜ͱ͕Ͱ͖·͢ɻ ΧϨϯτσΟϨΫτϦͷ֬ೝ pwd Ͱ͢ɻ
ϗϯτʹ߹ͬͯΔ?
͜ͷΜେৎͰ͔͢ʔ
͍Α͍ΑGitͰ͢Αʔ
git init
.git=ϩʔΧϧϦϙδτϦ
ϦϙδτϦ=ೖΕ .git ͕ফ͑ΔͱԿͳ͔ͬͨ͜ͱʹͳΔɻ શ෦Γ͍ͨ͠ͱ͖ rm -rf .git (͋Δ͍ৄ͍͠ਓʹͬͦ͜Γฉ͖·͠ΐ͏)
git status
Untracked files = ·ͩཧ͍ͯ͠ͳ͍ϑΝΠ ϧ͕͜Ε͚ͩ͋Δͱ͍͏͜ͱɻ git add Λ͑ͱݴΘΕ͍ͯ·͢Ͷɻ
git add
add = ίϛοτ(͋ͱͰݴ͍·͢)͢ΔϦετʹϑΝ ΠϧՃ͢Δͱ͍͏ҙຯͰ add Ͱ͢ɻ ͜ͷૢ࡞Λεςʔδͱݴ͍·͢ɻ όʔδϣϯཧͰͬͱେࣄͳૢ࡞ɺίϛοτ ͷ४උͰ͢ɻ ͪΐ͏ͲɺFinderͰγϑτΩʔΛԡ͠ͳ͕ΒϑΝΠ
ϧΛϙνϙν͢ΔΑ͏ͳͷͰ͢ɻ
͔Βͷ→ git status
git status ͷ݁Ռ͕ Changes to be committed: ͱ͍͏ϦετʹͳΓ·ͨ͠ɻ ͍Α͍Α͕࣍ॳΊͯͷίϛοτͰ͢ɻ
git commit -m “...”
ॳճίϛοτ͓ΊͰͱ͏͍͟͝·͢ɻίϛοτ όʔδϣϯཧͰͬͱॏཁͳػೳͰ͢ɻ બΜͩϑΝΠϧΛ .git ϑΥϧμͷதʹόοΫΞ οϓίϐʔͨ͠ΠϝʔδͰ͢ɻ ֤ίϛοτʹɺ࡞ۀऀͷ໊લɺίϛοτͷ ࣌ɺϝοηʔδ͕ඞͣΓ·͢ɻ
-m ͳ͠Ͱ git commit ͱͯ͠͠·͍ɺͳʹ͕ ى͔ͬͨ͜Θ͔Βͳ͍ਓɺۙ͘ͷৄͦ͠͏ ͳਓʹฉ͍͍ͯͩ͘͞ɻ Θ͔Δਓͦͷ··ଓ͚ɺ:wq Ͱऴྃͨ͠Β ͍͍ͱࢥ͍·͢ɻ
Θ͔Βͳ͍ਓGUIΛ͏·ͰͬͯͶɻ
git status ...? → git log ...!
git status nothing to commit (working directory id clean)ͱݴ͍ͬͯ·͢ɻ࠷ޙͷίϛ
οτ͔Β·ͩมߋ͕ͳ͍ͱ͍͏ҙຯͰ͢ɻ git log ͰաڈͷίϛοτΛࢀরͰ͖·͢ɻ ίϛοτʹ 00e8ac1be367fb350... ͱ͍͏ID͕ ͍͍ͯΔ͜ͱ͕Θ͔Γ·͢ɻ͜ͷίϛοτͷϢ χʔΫͳཧ൪߸ͰɺΘΓͱॏཁͰ͢ɻ
৺ͳΒ git log --stat
͠ .DS_Store ͰάνάνݴΘΕΔਓ...
.gitignore ͱ͍͏ϑΝΠϧʹ
.DS_Store ͱॻ͖·͢
.gitignore = git + ignore (ແࢹ) ແࢹ͢ΔϑΝΠϧ໊ύεͷύλʔϯΛॻ͘
͜͜·Ͱͷ·ͱΊ git init git status git add <file/folder> git commit
-m “message” git log .gitignore
Ή͔͍ͣ͠ͻͱʔ
ͦ͏Ͱ͢Ͷ...
༊͠ิॆ͠ͱ͖·͢
͔͜͜Β໘ന͘ ͳΔΑɻ index.htmlʹ มߋൃੜɻ
git status
git diff
git commit -a -m “...”
git commit -a มߋ͞ΕͨϑΝΠϧΛͯ͢ add ͔ͯ͠Βίϛοτͱ͍͏ҙຯͰ͢ɻ git add Ͱεςʔδ͔ͯ͠Β git
commit ͢Δ ͷͱಉ͡Ͱ͢ɻ
git log
ϩάͷ݁Ռ͕2ͭʹͳΓ·ͨ͠ɻ ʮιʔεΛมߋͯ֬͠ೝɾίϛοτʯΛࣗ༝ ʹͬͯΈ·͠ΐ͏ɻ
࡞ۀ͕۠ΕͨΒ͙͢ʹίϛοτ͠·͠ΐ ͏ɻ ࠩอଘͳͷͰ༰ྔ৯͍·ͤΜɻԕྀͳ͘ ͲΜͲΜΓ·͠ΐ͏ɻ(※ Photoshopผ) සͷ҆ɺ1ߦͷϝοηʔδͰҙຯΛද ͤΔఔͷมߋηοτͰ͢ɻ
͜͜·Ͱͷ·ͱΊ git status git diff Ͱঢ়ଶΛ֬ೝͭͭ͠... มߋ → ίϛοτ
→ มߋ → ίϛοτ → ... ͘͜͜͠ͳ͍Ͱ͢Ͷɻ
ͭ͗ɺͪΐͬͱ͍͠ʹͳΓ·͢ɻ
< \コワクナイカラ/
HTMLͷߋ৽Λ͠ͳ͕Β ཪͰίπίπCSSΛม͍͑ͨ
ϒϥϯν
git branch css-coding git checkout css-coding
css-coding ͱ͍͏໊લͷϒϥϯνΛ࡞Γɺϒ ϥϯνΛΓସ͑·ͨ͠ɻ ׳Ε͍ͯΔਓ git checkout -b css-coding Ͱɺ࡞ͱΓସ͑Λಉ࣌ʹͰ͖·͢ɻ
git branch (ύϥϝʔλͳ͠)
ϒϥϯν͕2ͭ͋Δ͜ͱɺࠓͷϒϥϯν͕ css-codingͩͱ͍͏͜ͱ͕Θ͔Γ·͢ɻ master = ࠷ॳ͔Β͋ΔϝΠϯͷϒϥϯν
css-coding ϒϥϯνͰɺ css/main.css Λॻ͖͑ɻ
commit → log
H1 HENKOU → CSS PINK ͱ͍͏มߋͷྲྀΕ Ͱͨ͠Ͷɻ͜ΕΛԱ͓͍͍͑ͯͯͩ͘͞ɻ (ਓʹΑͬͯҧ͏͔͠Ε·ͤΜ) ͜͜ͰɺCSSͷ࡞ۀΛΊͯɺHTML͚ͩม ߋ͢Δ࡞ۀͷྲྀΕʹΓ·͠ΐ͏ɻ
git checkout master
masterϒϥϯνͰɺ࠷ޙͷίϛοτ͕·ͩ H1 HENKOU ͷ··Ͱ͢ɻͭ·Γ...
ͱͲ͓Γ
Կࣄͳ͔ͬͨ ͔ͷΑ͏ʹ index.html Λॻ͖͑ͯ...
commit → log
H1 HENKOU → KIJI MIDASI ͱ͍͏ྲྀΕͰ ίϛοτ͕ͭͳ͕Γ·ͨ͠ɻ masterϒϥϯνͰɺCSSؔͷίϛοτ͕ ͳ͔ͬͨ͜ͱʹͳ͍ͬͯ·͢ɻ
ผϑΥϧμ࡞ۀͷΠϝʔδ master css-coding
branchͱ git branch css-coding css-coding
checkoutͱ master git checkout master ࡞ۀϑΥϧμ
git log --oneline --graph --all
͔ͨ͠ʹίϛοτͷཤྺ͕ذ͍ͯ͠·͢ɻ ϒϥϯνผͷਓͱ࡞ۀ͢Δͱ͖༗ޮͰ͢ɻଞͷόʔδϣ ϯཧπʔϧͱGit͕ҧ͏ͷɺλάͳΜ͔ΑΓͣͬͱϒ ϥϯνͷ΄͏͕༻සߴ͍ͱ͍͏Ͱ͢ɻ Ͱͪΐͬͱ͍͠ͷͰɺޓ͍ʹಉ࣌ʹ৮Βͳ͍Α͏ Λ͔͚ͳ͕ΒͻͱͭͷϒϥϯνͰ͍͍ͬͯͰ͢ɻ ͨͩ͠ɺ͜ͷʮίϛοτͷذʯͱ͍͏֓೦ɺGitΛཧ ղͯ͠͏্ͰઈରʹΕ͍͚ͯ·ͤΜɻ
git merge -m “...” css-coding
ͨͬͨͻͱͭͷίϚϯυͰ ผͷϒϥϯνͷ࡞ۀ͕߹ମ!
mergeͱ master css-coding git merge
Ϛʔδɺ૬खͷϒϥϯν͔ΒมߋϑΝΠϧ ͚ͩΛऔΓग़ͯ͠ɺࣗͷϑΝΠϧΛ্ॻ͖ ͢ΔΠϝʔδɻ ͠ϒϥϯνؒͰಉ͡ϑΝΠϧΛมߋͯͨ͠ ΒɺͦΕΒ͕ڝ߹(ίϯϑϦΫτ)ͨ͠ঢ়ଶʹ ͳΓ·͢ɻ
͍·ίϯϑϦΫτʹ͍ͭͯઆ໌͢Δͷେม ͳͷͰɺͳΔ͘ى͜͞ͳ͍Α͏ʹͯͩ͘͠ ͍͞ɻ GitͰίϯϑϦΫτΛղফ͢Δͷɺ SubversionΑΓͣͬͱ؆୯ͳͷͰ҆͝৺Λɻ ͠ىͬͨ͜Βܦݧऀʹฉ͖·͠ΐ͏ɻ
ࢀߟ: Θ͔Γ͍͢ϒϥϯνͷ http://www.slideshare.net/ kotas/git-15276118
͜͜·Ͱͷ·ͱΊ git branch ϒϥϯν໊ git checkout ϒϥϯν໊ git branch git
log --oneline --graph --all git merge ϒϥϯν໊
Ή͔͍ͣ͠ͻͱʔ
ͦΖͦΖ·ͨ༊͠
͍͍ͪͪίϚϯυଧͭͷ ਖ਼͠ΜͲ͍
http://gitx.frim.nl/
͋͑ͯͬͱݹ͍GitXΛ͍·͢ɻ ͜͜·Ͱͷઆ໌ʹରԠ͢Δػೳ͔͠ͳ͍ͷ Ͱɺ͘͢͝Θ͔Γ͍͢ɻ ίϚϯυӡ༻ͱͷ૬ੑ͕͍͍Ͱ͢ɻ ίϚϯυ͕ۤखͳਓʹɺޙͰͬͱઌͷػ ೳ͕͋ΔπʔϧΛհ͠·͢ɻ
log, diff, branch
branch -d(আ), checkout
status, diff
add, checkout --(มߋΛΊΔػೳ)
commit + ΤσΟλ
͓·͚: λʔϛφϧ͖ͳΒ tig
վߦίʔυͷมߋ CRLF→LF จࣈίʔυͷมߋ SJIS→UTF-8 Πϯσϯτํͷมߋ λϒ→εϖʔε ઈର్தͰ͍͚ͬͯͳ͍͜ͱ
͜ΕΔͱɺϑΝΠϧͷͯ͢ͷߦ͕ॻ͖Θͬͨͱೝࣝ͞ Ε·͢ɻ ຊདྷͷมߋҙਤ͕Θ͔Βͳ͘ͳΓ·͢ɻ ΔͳΒૣ͍ஈ֊ͰɺશιʔεͷϑΥʔϚοτΛҰؾʹมߋ ͢ΔίϛοτΛ͠·͠ΐ͏ɻ ઈର్தͰ͍͚ͬͯͳ͍͜ͱ
< \コワクナイカラ/
͍Α͍ΑGitHub
https://github.com/
·ͩͷਓαΠϯΞοϓ
Welcome to social coding.
ެ։伴Λొ ެ։伴ೝূͱSSHͷઆ໌ল͖·͢ɻ ͣΓɺ~/.ssh ͋Γ·͔͢? open ~/.ssh id_rsa.pub ͕͋ΕOKɺͦΕΛ͍·͢ɻ ͳ͍ਓ͜ΕͰ࡞Γ·͢: ssh-keygen
-t rsa -C "
[email protected]
" ͢Ͱʹ͍࣋ͬͯΔਓྡͷਓΛखͬͯ͋͛·͠ΐ͏ɻ
͜͜ʹৄ͘͠ग़͍ͯ·͢: https://help.github.com/articles/ generating-ssh-keys
id_rsa.pub Ͱ͖ͨΒ... Ͱɺid_rsa.pubͷ༰Λ·Δ͝ͱίϐϖ͠·͠ΐ͏ɻ
ϦϙδτϦΛ࡞Ζ͏ ͜͜
Ͱ͖ͨ
͡Ίͯͷpush
⌘+R
git push origin master originͷϦϞʔτϦ ϙδτϦʹmasterϒϥϯνΛΞοϓϩʔυ͢ ΔΠϝʔδͰ͢ɻ -u ΦϓγϣϯɺҎ߱masterϒϥϯνͰ git
push ͚ͩͨ͠ͱ͖ɺσϑΥϧτͰoriginʹ push͢ΔΑ͏ʹͳΔͱ͍͏ඥ͚ɻ
push push
ͱ͜ΖͰ͜ͷEditͬͯ?
ฤूͰ͖ͪΌ͏!
ϝοηʔδ+ίϛοτ
git pull
git pull ϦϞʔτͷϦϙδτϦ͔ΒϩʔΧϧ ʹμϯϩʔυ͢ΔΠϝʔδɻ ͋ɺGitHubͷαΠτͰฤू͢Δͱɺಈ࡞֬ೝ Ͱ͖ͯͳ͍ιʔεͰίϛοτΛੵΉ͜ͱʹͳ ΔͷͰɺී௨μϝͰ͢Αɻ
pull pull
ϦϞʔτ͔Βpull͢Δ=μϯϩʔυͨ͠ͷΛແ໊ϒϥϯνͱ Έͳͯ͠ɺϚʔδ→ίϛοτΛ͍ͬͯΔɻ μϯϩʔυͯ͠Ϛʔδ͠ͳ͍pullΛfetchͱݴ͏ɻ pull = fetch + merge ͱʹ͔͘ɺ͍͖ͳΓϩʔΧϧͥΜͿ্ॻ͖Ͱͳ͍ɻ FTPͰམͱ͖ͯͨ͠ϑΝΠϧΛ͍͖ͳΓ্ॻ͖ͯ͠ࠔͬͨ͜ͱ...
͋Γ·͢ΑͶɻ pullͷҙ
ϦϞʔτͷ࠷৽ΑΓݹ͍ঢ়گʹੵΜͩίϛοτΛpush͢Δͷ ېࢭ͞Ε·͢ɻ ͳͷͰɺ·ͣϩʔΧϧʹpull͔ͯ͠Βɺ࡞ۀ→ίϛοτ →pushͷॱংΛकΓ·͠ΐ͏ɻ ଞͷਓ্͕͛ͨαʔόͷ࠷৽Λݹ͍ϑΝΠϧͰFTP্ॻ͖͠ ͯࠔͬͨ͜ͱ...͋Γ·͢ΑͶɻ pushͷҙ
͍͜͠ͷͰɺͱΓ͋͑ͣWeb੍࡞ͷݴ༿Ͱ͍͏ͱɺαʔ όͷΞοϓϩʔυͱαʔό͔ΒͷμϯϩʔυͰOKͰ͢ɻ ͨͩɺಥવͷ্ॻ͖Ͱେࣦഊ͠ͳ͍ஔ͕͍ͯΔͱ͍͏͜ ͱ͚ͩཧղ͍ͯͩ͘͠͞ɻ GitͰΤϥʔʹͳΔͱ͍͏ͱ͖ɺͦ͜͠Ͱࣦഊ͕ى͖ͳ͔ ͬͨΒɺͬͱͻͲ͍͜ͱ͕ى͍ͬͯͨ͜ɺͱ͍͏ՄೳੑΛ ͍Ͱ͘Ε͍ͯΔͱࢥ͍·͠ΐ͏ɻ Ή͔͍ͣ͠ͻͱʔ
ͱ͜ΖͰ͖ͬ͞ɺoriginʹʮmasterΛʯpush ͨ͠ͱݴ͍·ͨ͠ɻ
ͭ·Γ...GitHubʹ·ͩ css-coding ϒϥϯν ͕ͳ͍!!
git push origin css-coding
ϒϥϯνpushͰ͖ͨ
pushͱpullϒϥϯν͝ͱʹݸผͰ͢ɻ ͲΕΛpush/pull͢Δ͔Λҙࣝ͠·͠ΐ͏ɻ ݸผ͔ͩΒͱ͍ͬͯ༰ྔ͕ഒʹͳΔΘ͚Ͱ͋Γ·ͤ Μɻফඅ͢Δͷࠩͷྔ͚ͩͰ͢ɻ
ϩʔΧϧͷ࡞ۀσΟϨΫτϦΛআͯ͠ฏؾɻ ͜ΕͰαʔόʹશ෦͋ΔͷͰ
GitHubͷ͔͜͜Β
git clone ...
·͋ɺclone ͢Δͷ͍͍ͩͨଞਓͰ͢ɻ ్த͔Β࡞ۀʹࢀՃ͢Δਓɺgit init Ͱͳ ͘͜ͷ git clone ͔Βελʔτ͠·͢ɻ ͋ͱͰଞͷਓͱڞಉ࡞ۀͷ࿅श͠·͠ΐ͏ɻ
෮ݩͰ͖·ͨ͠
͍ʙΑ͔ͬͨΑ͔ͬ...
͓? img
: ۭϑΥϧμμϝ GitۭͷϑΥϧμΛཧͰ͖·ͤΜɻ͋͘·ͰϑΝΠϧͷมߋ ͷཧͳͷͰɻ ۭͬΆͷϑΥϧμΛҡ͍࣋ͨ͠߹ɺதʹԿ͔μϛʔͷϑΝΠ ϧΛೖΕ͍ͯͩ͘͞ɻ μϛʔϑΝΠϧ໊ empty, .gitkeep, .gitignore,
.htaccess ͳͲ͍ Ζ͍Ζͳश׳͕͋Γ·͢ɻ ͋·Γ৺͠ͳ࣮͕ͯ͋͘Δ͜ͱ·ΕͰ͢ɻ
ͪͳΈʹmasterҎ֎ͷϦϞʔτϒϥϯνΛ ϩʔΧϧʹ࿈Εͯ͘ΔͳΒ... git branch css-coding origin/css-coding
͜͜·Ͱͷ·ͱΊ git remote add ϦϙδτϦ໊ ΞυϨε git push -u ϦϙδτϦ໊
ϒϥϯν໊ git push (:ϒϥϯν͝ͱ) git pull git clone ΞυϨε ۭͷϑΥϧμແࢹ͞ΕΔ git branch ϒϥϯν໊ origin/ϒϥϯν໊
༊͠(ry
͓ͨͤ͠·ͨ͠ GUIͰ͢Α
http://rowanj.github.com/gitx/
GitXͷ͍͢͝൛
clone
remote/fetch/pull/push
͜Μͳ͜ͱ·Ͱ git branch css-... origin/css-...
GitXgitίϚϯυʹ࣮ͳUIͳͷͰɺίϚϯ υͰཧղͨ͠ਓ͕͍͍͢Ͱ͢ɻ ͜ͷUIࣗମ͕ʮGitͰͰ͖Δ͜ͱू(؆қ൛)ʯ ͋Γ͕ͪͳૢ࡞͕ͻͱͱ͓Γ͋ΔͷͰɺ͞Β ʹษڧ͢ΔϙΠϯτ͕ݟ͖͑ͯ·͢ɻ
·ͩ͜Ε͡Ό͍ʹ͍͘ ͱࢥͬͨΒɺϝΠϯͰ ͏πʔϧͬͱࣗʹ ߹͏ͷΛબͼ·͠ΐ͏ɻ
͜ΕͰΑ͏͘ ελʔτϥΠϯ
Ή͔͍ͣ͠ͻͱʔ
gitͷίϚϯυ Ή͔͍ͣ͠ͷʙ
None
gitͷίϚϯυମܥʮ͏ਓͷؾ࣋ͪʯͰ ͳ͘ʮ෦ઃܭͷࣄʯͰͰ͖͍ͯ·͢ɻ ࡞ͬͨਓͷؾ࣋ͪʹͳͬͨΒཧղͰ͖Δͱ͔ ແཧήʔɻ ͳͷͰ...
ࡉ͔͍ૢ࡞ํ๏Ε͔ͯ·͍·ͤΜɻ ༻ޠͱ֓೦ͱΈͷجຊΛΕͳ͍͜ͱ͕ॏཁͰ͢ɻ ཧղͯ͠͠·͑ɺGUIΛͬͨ΄͏͕ޮతͰ͢ɻ ίϚϯυΛΔͱɺGUIͷઆ໌ςΩετ͕ίϚϯυΦϓγϣ ϯͷԿΛࢦ͢ͷ͔ɺ૾Ͱ͖ΔΑ͏ʹͳΓ·͢ɻ ͔ͩΒͦ͜
ͨͩ͠... ຊʹࠔͬͨͱ͖άάͬͯίϚϯυΛίϐϖͰ͖ΔΑ͏ʹ ͠ͱ͖·͠ΐ͏ɻ GUIͷૢ࡞खॱٕज़ϒϩάʹॻ͔Εʹ͍͘ɻ gitάάΕΔ! ←͜͜ॏཁ
͓ർΕ༷Ͱͨ͠