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
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
570
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
2
300
哲学史とモデリング
tanakahisateru
4
1.1k
オブジェクト指向宗教史
tanakahisateru
32
18k
ほげ言語にあってPHPにない機能
tanakahisateru
6
4.1k
君たちはどうプログラミングするか
tanakahisateru
16
3.3k
デバッグ用ロガーの注入どうする?
tanakahisateru
2
740
アンドキュメンテッド ちょうぜつソフトウェア 設計入門 「オブジェクト指向に定義はない」のか?
tanakahisateru
25
10k
ちょうぜつ改め21世紀ふつうのソフトウェア設計
tanakahisateru
14
8.8k
Other Decks in Technology
See All in Technology
Claude起点の仕様駆動開発
tanakaseiya
0
370
個別開発で終わらせない。 現場の課題をプロダクトの強さに変える StockmarkのFDE
ktkrhr
0
580
SREでアラート疲れを 解決しよう!
kairim0
1
190
IR Today: Theory, Practice, and Agents
dtunkelang
0
340
オンラインゲームのシステム全体像 - コロプラ 2026年度 新卒研修
colopl
0
420
生成AIを使って「人が」考える技術 ― AI時代の人機共想と実践ノウハウ|UNITT AC2026
ishiirikie
0
550
自主式軟體工廠
philipz
0
220
Datadog の学び方 - あるいは、オブザーバビリティを学ぶとは何か
mananyuki
1
410
データ品質を壊しながらSnowflakeのAIに分析させてみた
kawanago
0
500
大阪オフィスに Unitree Go2 がやってきたので Physical AI やってみた
dafujii
0
300
Swap and Memory Reclaim - Squeezing Out More RAM
ennael
PRO
1
1.6k
Meet AgentCore Identity Consent Portal
hironobuiga
3
190
Featured
See All Featured
Navigating Weather and Climate Data
rabernat
0
550
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
560
Abbi's Birthday
coloredviolet
4
10k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
910
How to Talk to Developers About Accessibility
jct
2
560
Balancing Empowerment & Direction
lara
6
1.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
700
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
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άάΕΔ! ←͜͜ॏཁ
͓ർΕ༷Ͱͨ͠