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楽しく学ぼう
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
MIXI ENGINEERS
PRO
May 12, 2015
Programming
28k
47
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
すごいGit楽しく学ぼう
blog記事:
http://alpha.mixi.co.jp/entry/20150513
MIXI ENGINEERS
PRO
May 12, 2015
More Decks by MIXI ENGINEERS
See All by MIXI ENGINEERS
安全性・開発速度・ユーザー体験の あいだで考える 事業会社のプロダクトセキュリティ
mixi_engineers
PRO
0
160
MIXIで活躍できるエンジニアを 若手社員目線で考えてみる
mixi_engineers
PRO
0
310
『モンスターストライク』 の運営に伴走する! データ民主化への 解析グループの3つのアプローチ
mixi_engineers
PRO
1
610
実践が先生だった— 新卒サーバーエンジニア1年目のリアル
mixi_engineers
PRO
0
670
13年運用タイトルのサーバーサイドが辿り着いた現在地 ― モンスターストライクにおける技術・組織・AI活用から得た知見
mixi_engineers
PRO
1
910
脱Jenkins、インターン生が挑んだCIツールGitHubActions移行
mixi_engineers
PRO
2
670
セキュリティ研修【MIXI 26新卒技術研修】
mixi_engineers
PRO
38
34k
WEBフロントエンド研修【MIXI 26新卒技術研修】
mixi_engineers
PRO
5
1.9k
AI研修(Day1)【MIXI 26新卒技術研修】
mixi_engineers
PRO
22
19k
Other Decks in Programming
See All in Programming
Webの地図
yosuke_furukawa
PRO
6
4.2k
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
180
数年滞っていたダークモード対応をおよそ2週間で完了させる
chigichan24
0
700
【高い買い物LT会】初任給で話題の国産フィジカルAIを買った話
akagami
PRO
0
150
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
140
AIを上手に使っていこうとしたら越境せざるを得なくなった話 〜実践1年で見えた境界を越えなければならない理由と進め方〜 / Crossing borders with AI
tomoyakitaura
4
1.1k
Vibes Containers 〜AIで変わるコンテナ設計と運用〜
tkikuc
3
530
テストを司るデーモンに会いに行く 〜隔離した仮想マシンでテストを通すまで〜
h1d3mun3
1
160
AIは賢い。でも実行環境は? CLIおじさんがAI時代に伝えたいこと ~ CLIおじさんがAI時代に伝えたいこと ~
curekoshimizu
1
240
How I Stole PSI from Android Studio - DroidKaigi2026
worker8
0
110
信頼性の目標を誰も求めてない
shubox
0
500
{ Android | Kotlin } Gradle Plugin in 2026
ryunen344
1
300
Featured
See All Featured
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
500
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
510
The Curse of the Amulet
leimatthew05
2
14k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Facilitating Awesome Meetings
lara
57
7.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Building Adaptive Systems
keathley
44
3.2k
The Pragmatic Product Professional
lauravandoore
37
7.4k
Scaling GitHub
holman
464
140k
GitHub's CSS Performance
jonrohan
1033
470k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
Transcript
Learn You a Git for Great Good!
ͦͦɺGitͬͯ ԿͷͨΊʹ͋ΔΜͩΖ͏ʁ
GitɺνʔϜͰͭͷ։ൃʹ औΓΉ͜ͱΛՄೳʹ͠·͢ʂ
Git͕ແ͍ͱʜʜ Կ͕มΘ͔͔ͬͨΜͳ͍ʂ ٸʹಈ͔ͳ͘ͳͬͨΜ͚ͩͲʜʜ ࠓ͔Βࢲ͕։ൃ͢ΔͷͰɺΈΜͳ։ൃΛࢭΊͯʂ ͜ͷίʔυ୭͕ॻ͍ͨΜͩΖ͏ʁ
ਖ਼ਏ͍ʂ
Git͕͋Εʂ ;Ή;Ήɺ͜͏͍ͬͨมߋ͕ՃΘͬͨͷ͔ʂ ಈ͔ͳ͘ͳ͚ͬͨͲɺ͙͢ʹલʹͤͨʂ ඦਓͰҰॹʹ։ൃͰ͖ΔΑʂ ͜ͷΫιίʔυΛॻ͍ͨͷɺ˓˓͞Μ͔ʜʜ
ΈΜͳͰ։ൃͰָ͖͍ͯ͠ʂ ✌ Т✌ ࡾ✌ Т ✌ࡾ ✌`Т ✌
w ͱΓ͋͑ͣͬͯΈΑ͏ʂ w ίϛοτͱϒϥϯνʹ͍ͭͯਖ਼͘͠ཧղ͠Α͏ w ྺ࢙ΛऔΓࠐΉ w མึर͍ ࠓͷ༧ఆ
w ͱΓ͋͑ͣͬͯΈΑ͏ʂ w ίϛοτͱϒϥϯνʹ͍ͭͯਖ਼͘͠ཧղ͠Α͏ w ྺ࢙ΛऔΓࠐΉ w མึर͍ ࠓͷ༧ఆ
ͬͯΈΑ͏ʂͷͦͷલʹ $ git config --global user.name "Amy Mikushi" $ git
config --global user.email "
[email protected]
" Gitʹࣗݾհ ͜͜Ͱొͨ͠ใ͕(JUͷૢ࡞ʹ͍ͭͯճΔʂ
͡ΊͯΈΑ͏ $ mkdir books $ cd books $ git init
GitϦϙδτϦΛ࡞͠Α͏ ϦϙδτϦɺόʔδϣϯཧ͢ΔͨΊͷ ஷଂݿͷ͜ͱͰ͢
$ find . Α͘Ͱ͖·ͨ͠ʂ ͜ΕͰbooks
ঢ়ଶͷ֬ೝ $ git status git
ϑΝΠϧͷՃ Untracked
ՃΛ֬ೝ Changes
͡Ίͯͷίϛοτ εςʔδϯάΤϦΞʹஔ͍ͨϑΝΠϧΛεφοϓγϣο τͱͯ͠ɺGit
εςʔδϯάΤϦΞͱϦϙδτϦ Sherlock.txt Crusoe.txt ࡞ۀσΟϨΫτϦ εςʔδϯάΤϦΞ (JUϦϙδτϦ git add ίϛοτ͢Δ४උ͕Ͱ͖ͨΒgit
εςʔδϯάΤϦΞͱϦϙδτϦ Sherlock.txt Crusoe.txt ࡞ۀσΟϨΫτϦ εςʔδϯάΤϦΞ (JUϦϙδτϦ git add ίϛοτ͢Δ४උ͕Ͱ͖ͨΒgit
Sherlock.txt Crusoe.txt ࡞ۀσΟϨΫτϦ εςʔδϯάΤϦΞ (JUϦϙδτϦ git commit add
Sherlock.txt Crusoe.txt ࡞ۀσΟϨΫτϦ εςʔδϯάΤϦΞ (JUϦϙδτϦ git commit add
ྺ࢙ΛΈΑ͏ มߋΛอଘͰ͖ΔΑ͏ʹͳΓ·ͨ͠ʂ มߋΛίϛοτͱͯ͠ͲΜͲΜੵΈॏͶ͍ͯ͘͜ͱ͕େࣄͰ͢ ͲΜͳมߋ͖͚ͯͨͬ͠ʜʁͱͳͬͨΒྺ࢙ΛৼΓฦΓ·͠ΐ͏ʂ $ git log աڈͷมߋ ίϛοτ ͕ҰཡͰ͖·͢
ผͷϑΝΠϧΛՃ͢ΔίϛοτΛߦ͍ɺ࠶
ϦϞʔτϦϙδτϦΛͬͯΈΔ ಉ͡ঢ়ଶ͕ϦϞʔτʹอଘͰ͖·͢ ͍ͭͰͤΔ͠ɺଞͷਓҾͬுͬͯ͜Ε·͢ ·ͣɺGitHubͰϕΞϦϙδτϦΛ࡞͠Α͏ʂ https://github.com/new ϕΞϦϙδτϦ࡞ۀ༻σΟϨΫτϦΛ࣋ͨͳ͍ .gitͷΈͷϦϙδτϦͰ͢
ϦϞʔτϦϙδτϦΛొ͢Δ ϕΞϦϙδτϦΛ࡞ͨ͠ΒϦϞʔτϦϙδτϦͱͯ͠ ొ͠Α͏ $ git remote add origin \
[email protected]
:<your
account>/books.git ొͨ͠ϦϞʔτϦϙδτϦɺ$
खݩͷมߋΛ্͛ͯΈΑ͏ $ git push -u origin master ϦϞʔτϒϥϯνΛࣗಈͰ͢ΔΑ͏ʹઃఆ͢Δ ͔࣍Βpull
ڞಉ։ൃ͜ͱ͡Ί $ cd .. $ git clone
[email protected]
:<your account>/books.git alt_books
GitΛ͏͜ͱͰෳਓͰ͔ΜͨΜʹ։ൃͰ͖·͢ʂ ࠓ͔Βผਓ ͷؾ࣋ͪ ʹͳͬͯମݧͯ͠Έ·͠ΐ͏ ·ͣϦϞʔτϦϙδτϦΛखݩʹऔΓࠐΈ·͢ alt_booksͱ͍͏໊લͰϦϙδτϦΛෳ(clone)Ͱ͖ ͨʂ
ڞಉ։ൃ͜ͱ͡Ί $ cd alt_books $ vim Crusoe.txt $ git add
Crusoe.txt $ git commit $ git push Ͱɺalt_booksͰ࡞ۀΛ͍͖ͯ͠·͠ΐ͏ pushͨ͠ΒɺGitHubͰ֬ೝͯ͠ΈΑ͏ʂ
มߋΛऔΓࠐΉ $ cd ../books $ git pull ଞਓͷߦͬͨ࡞ۀ alt_booksͰߦͬͨ࡞ۀ Λ
booksʹऔΓࠐΜͰΈ·͠ΐ͏ ͦΕʹpull
มߋΛ֬ೝʂ $ vim Sherlock.txt $ git diff diff
มߋΛ֬ೝʂ1BSU $ git add Sherlock.txt $ git diff --staged ͨͩ୯ʹgit
ݩʹ͢ $ git reset Sherlock.txt ૉΒ͍͠ʂमਖ਼ՕॴΛ͙͢ʹ֬ೝ͢Δ͜ͱ͕Ͱ͖ΔΑ ͏ʹͳΓ·ͨ͠ ࣍ݩʹ͢ํ๏Λ֮͑·͠ΐ͏ addΛऔΓফ͢ʹgit
ݩʹ͢ $ vim Sherlock.txt $ git checkout -- Sherlock.txt ͜ΕͰ͖ͳ͚ͩBEEΛͨ͠ΓɺBEEΛऔΓফͨ͠ΓͰ
͖·͢ ࣍ϑΝΠϧࣗମΛલճͷίϛοτঢ়ଶʹ͢ํ๏Ͱ͢ ίϛοτͯ͠ͳ͍มߋফ͑ͪΌͬͯݩʹͤͳ͍ʂ
ϒϥϯνΛ࡞Ζ͏ Gitͷ͍ํΛ΄ͱΜͲϚελʔ͠·ͨ͠ʂ ࠷ޙʹGitͷϒϥϯνػೳΛֶͼ·͠ΐ͏ ϒϥϯνɺݱࡏͷίϐʔΛ࡞͢ΔػೳͰ͢ ػೳՃόάमਖ਼ͷࡍϒϥϯνΛͬͯ࡞ۀΛਐΊ·͢ ͬͨϒϥϯν͔Β͍ͭͰݩͷmasterϒϥϯνʹͬ ͯ͘Δ͜ͱ͕Ͱ͖·͢ masterσϑΥϧτͷϒϥϯν໊Ͱ͢
ϒϥϯνΛ࡞Ζ͏ $ git branch clean_up ϒϥϯνΛΔʹɺgit
ϒϥϯνΛΓସ͑ͯΈΑ͏ $ git checkout clean_up clean_up
ϑΝΠϧͷআ $ git rm '*.txt' $ git commit -m "Remove
all files" clean_up
ϒϥϯνͰߦͬͨ࡞ۀΛऔΓࠐ͏ $ git checkout master clean_up
ϒϥϯνͰߦͬͨ࡞ۀΛऔΓࠐ͏ $ git merge clean_up clean_up
ϒϥϯνͷআ $ git branch -d clean_up ඞཁͷͳ͘ͳͬͨclean_upϒϥϯνΛআ͠Α͏ git
࠷ޙͷpush $ git push ࠷ޙʹࠓ·ͰߦͬͨมߋΛGitHubʹөͤ͞Α͏ʂ Git͕͑ΔΑ͏ʹͳͬͨʂ
w ͱΓ͋͑ͣͬͯΈΑ͏ʂ w ίϛοτͱϒϥϯνʹ͍ͭͯਖ਼͘͠ཧղ͠Α͏ w ྺ࢙ΛऔΓࠐΉ w མึर͍ ࠓͷ༧ఆ
ίϛοτͱϒϥϯνͬͯ Ͳ͏͍͏ΈͳΜͩΖ͏ʁ
ίϛοτͱϒϥϯνΛཧղ͢Δ͜ͱͰ GitΛγϯϓϧʹཧղͰ͖·͢
ίϛοτͱʁ ίϛοτ༷ʑͳใΛ͍࣋ͬͯ·͢ w ϦϏδϣϯ w Tree
ίϛοτͱʁ ίϛοτ༷ʑͳใΛ͍࣋ͬͯ·͢ w ϦϏδϣϯ w Tree
ίϛοτʹ͕͍Δ ͭલͷίϛοτͷϦϏδϣϯΛ࣋ͭͷͰίϛοτʹ ͕͍Δʂ ৽͍͠ίϛοτ͔Βݹ͍ίϛοτ؆୯ʹ୧ΕΔ
࠷ݹͷίϛοτ·Ͱ୧ΕΔ ίϛοτΛ୧͍ͬͯ͘ͱඞͣҰ൪࠷ݹͷίϛοτ·Ͱ ୧Γண͚Δʂ ࠷ݹ ͋ΔͭͷίϛοτΛݟΕɺͦͷྺ࢙͕͔Δ
ίϛοτ͔͚ͬͨͲ ϒϥϯνʁ
୯ͳΔಛఆͷίϛοτΛࢦͨ͠ ϙΠϯλͷΑ͏ͳͷͰ͢ʂ
ϒϥϯν σϑΥϧτͷϒϥϯν໊master ϒϥϯνͷઌ಄Λࢦ͢ϦϑΝϨϯεɺ ςΩετͰϦϏδϣϯ SHA-1 ͕อଘ͞Ε͍ͯ·͢
ϒϥϯν ৽ͨͳnewͱ͍͏໊લͷϒϥϯνΛ࡞ͯ͠ΈΔ $ git branch new
ϒϥϯν $ git branch new
৽͍͠ͷ͕ग़དྷͨʂ ৽ͨͳnewͱ͍͏໊લͷϒϥϯνΛ࡞ͯ͠ΈΔ
ϒϥϯνͷجຊ͜Ε͚ͩʂ ୯ͳΔϙΠϯλͳͷͰɺϒϥϯν໊͕ ͑ΔॴϦϏδϣϯ͕͑Δ͠ ͦͷٯવΓ
ϒϥϯνͷࢬ͔Ε ͜ͷঢ়ଶ͔ΒOFXʹίϛοτ͍ͯ͘͠ͱʜʜ
ϒϥϯνͷࢬ͔Ε Μʁ
ϒϥϯνͷࢬ͔Ε ࢬ͔Εͨ͠ʂ
ϒϥϯνͷࢬ͔Ε newϒϥϯν͚ͩมߋ͞Ε masterϒϥϯνʹӨڹ͕ͳ͍ʂ
ࢲͲ͜ʹ͍ΔΜͰ͠ΐ͏͔ʜʜ git
HEADϦϑΝϨϯε $
git checkout master
HEADϦϑΝϨϯε $
git checkout master
HEADϦϑΝϨϯε HEADͷҐஔ͕ΓସΘͬͨʂ HEAD͕͍͍ͯΔϒϥϯνಛघͳಈ͖Λ͢Δ ͔Γ͍͢Α͏ʹ·ͣଞʹϒϥϯνΛͬͯΈΔ
$ git branch other
HEADϦϑΝϨϯε ͜͜Ͱίϛοτͯ͠ΈΔͱʜʜ
master
HEADͰࢀর͞Ε͍ͯΔϒϥϯν ίϛοτ͢ΔͨͼʹҠಈ͢Δ
ίϛοτͱϒϥϯνʹ͍ͭͯ ͔ͬͨʂ
w ͱΓ͋͑ͣͬͯΈΑ͏ʂ w ίϛοτͱϒϥϯνʹ͍ͭͯਖ਼͘͠ཧղ͠Α͏ w ྺ࢙ΛऔΓࠐΉ w མึर͍ ࠓͷ༧ఆ
ྺ࢙ΛऔΓࠐΉϚʔδͬͯ Ͳ͏͍͏࣌ʹ͏ΜͩΖ͏ʁ
ΘΓͱͲ͜Ͱ͏ʂ
ɾνʔϜͰ։ൃ͍ͯ͠Δ࣌ʹ ଞͷਓͷมߋΛऔΓࠐΉͱ͖ ɾਓͰ։ൃ͍ͯ͠Δ࣌ʹෳͷ ϒϥϯνΛͭʹ·ͱΊΔͱ͖
ΘΓͱΑ͋͘Δύλʔϯ Αʔ͠ɺमਖ਼ऴΘͬͨ͠αʔόʹ push
push
ͳͥpushͰ͖ͳ͍ʁ remote
repo my repo ͢Ͱʹ৽͍͠ ίϛοτ͕ʂ
͜ͷঢ়ଶͰpushͰ͖·ͤΜ Ͳͷίϛοτ͕masterϒϥϯνͷ࠷৽͔͔Βͳ͘ͳ Δ͔ΒͰ͢ ҎԼͷΑ͏ͳঢ়ଶΛ࡞Δ͜ͱग़དྷ·ͤΜ
Ͳ͏ͨ͠Β͍͍ͷʁ Ұखݩʹremote
มߋΛऔΓࠐΉ remote
repo my repo $ git pull origin master
remote repo my repo
มߋ͕औΓࠐ·Εͨʂ
remote repo my repo
$ git push origin master
remote repo my repo
pushͰ͖ͨʂ
ΈΜͳͰ։ൃ ͭͷϒϥϯνΛผʑʹมߋͨ࣌͠ɺ ଞਓͷมߋΛϚʔδͯ͠push
͍Ζ͍Ζͳྺ࢙ͷऔΓࠐΈํ ΘΓͱ͍Ζ͍ΖͳॴͰ͏ϚʔδͰ͕͢ɺ ࣮͍Ζ͍Ζͳྺ࢙ͷऔΓࠐΈํ͕͋Γ·͢ʂ • merge
͍Ζ͍Ζͳྺ࢙ͷऔΓࠐΈํ ΘΓͱ͍Ζ͍ΖͳॴͰ͏ϚʔδͰ͕͢ɺ ࣮͍Ζ͍Ζͳྺ࢙ͷऔΓࠐΈํ͕͋Γ·͢ʂ • merge
merge
$
git merge topic --ff merge
தͷਓ
ʮtopicϒϥϯνͬͯmasterͷࠩશ෦ ɹؚΜͰΔ͠ɺҰॹʹͪ͠Ό͑Α͘Ͷʁʯ merge
தͷਓ ʮϚʔδͨ͠Αʔʯ
merge
merge
͍Ζ͍Ζͳྺ࢙ͷऔΓࠐΈํ ΘΓͱ͍Ζ͍ΖͳॴͰ͏ϚʔδͰ͕͢ɺ ࣮͍Ζ͍Ζͳྺ࢙ͷऔΓࠐΈํ͕͋Γ·͢ʂ • merge
merge
merge
merge
merge
merge
merge
͍Ζ͍Ζͳྺ࢙ͷऔΓࠐΈํ ΘΓͱ͍Ζ͍ΖͳॴͰ͏ϚʔδͰ͕͢ɺ ࣮͍Ζ͍Ζͳྺ࢙ͷऔΓࠐΈํ͕͋Γ·͢ʂ • merge
merge
$ git merge topic --squash merge
தͷਓ ʮtopicͷมߋ༰Λѹॖ͠Α͏ʂʯ தͷਓʮͭͷύονʹѹॖͰ͖ͨʂʯ merge
merge
merge
merge
merge
Ϛʔδ͢Δ༰Λѹॖ͠ɺࠩΛݱࡏͷίϛοτʹ ͚ͬΔʂ ࠩεςʔδϯάΤϦΞʹͤΒΕΔ͚ͩͳͷͰɺ ίϛοτࣗͰΔඞཁ͕͋Δ merge
͍Ζ͍Ζͳྺ࢙ͷऔΓࠐΈํ ΘΓͱ͍Ζ͍ΖͳॴͰ͏ϚʔδͰ͕͢ɺ ࣮͍Ζ͍Ζͳྺ࢙ͷऔΓࠐΈํ͕͋Γ·͢ʂ • merge
ϦϕʔεͬͯԿʁ ϚʔδͱԿ͕ҧ͏ͷʁ
rebase '
͜Ε͕Ϧϕʔεʂ
࣮ࡍϦϕʔε͕Ͳ͏͍͏͜ͱΛ ͢Δͷ͔ͭͣͭݟ͍ͯ͜͏
rebase topicϒϥϯνΛrebase͍ͨ͠
rebase
$ git rebase master
' rebase ·ͣίϛοτͷมߋ༰ΛͦΕͧΕύονʹ͢Δ
rebase topicϒϥϯνΛmasterͱ ಉ͡ҐஔʹҠಈͤ͞Δ
rebase ࡞͓͍ͯͨ͠ύονΛͭͣͭ ॱʹద༻ͯ͠ίϛοτ͍ͯ͘͠
rebase ࠩΛద༻ͯ͠ίϛοτ
rebase '
rebase '
rebase '
ରͷϒϥϯνͷ্ʹݱࡏͷϒϥϯνΛ࡞Γ͠·͢ rebaseʹΑͬͯ࡞ΒΕͨίϛοτಉ͡༰͚ͩͲผͷ ίϛοτʹͳΔͷͰҙͰ͢ʂ git
ผͷίϛοτʹͳΔ w ϦϏδϣϯ w Tree
͍͚ͬͯͳ͍rebase ίϛοτͷใ͕มΘͬͯ͠·͏ͷͰɺ طʹpush͞Ε͍ͯΔϒϥϯνΛrebase͍͚ͯ͠·ͤΜ ଞਓ͕push
w ͱΓ͋͑ͣͬͯΈΑ͏ʂ w ίϛοτͱϒϥϯνʹ͍ͭͯਖ਼͘͠ཧղ͠Α͏ w ྺ࢙ΛऔΓࠐΉ w མึर͍ ࠓͷ༧ఆ
Gitͷ৭ʑͳٕΛֶ΅͏ʂ
͜Ε͚֮ͩ͑Α͏ $ git
gitίϚϯυͰɺGitͷΑ͘͏ίϚϯυΛҰཡ͢Δ ͜ͱ͕ग़དྷ·͢ ίϚϯυͷৄࡉͳઆ໌Λݟ͍ͨ࣌ɺmanΛར༻͠· ͠ΐ͏ ྫ͑ɺmergeίϚϯυʹ͍ͭͯৄ͘͠Γ͍ͨͱ͖ ϋΠϑϯͰܨ͛ͯೖྗ͠·͢ $ man git-merge ͜Ε͚֮ͩ͑Α͏
git
git
Ϛʔδ͢Δ࣌ʹ(JU͚ͩͰղܾͰ͖ͳ͍͜ͱ͕͋Γ·͢ ͦΕ͕ίϯϑϦΫτͰ͢ ίϯϑϦΫτͨ͠߹ਓ͕ؒղܾ͢Δඞཁ͕͋Γ·͢ ίϯϑϦΫτ͏͍ͩ ೣղܾ͠ͳ͍
ίϯϑϦΫτͨ͠ϑΝΠϧɺboth
ίϯϑϦΫτΛमਖ਼ͯ͠ɺίϛοτ͠·͢ ίϯϑϦΫτ͏͍ͩ b <<<<<<< HEAD ccc ======= c >>>>>>> topic
d b ccc d ίϯϑϦΫτղܾ࣌ʹɺίϯϑϦΫτղܾҎ্ͷ͜ͱΛͯ͠ ͍͚·ͤΜ ͲͷʹݱΕͳ͍มߋΛ͍ͯ͠ΔϚʔδΛevil
git
Φϓγϣϯͳ͠ͷgit
git
ͦΕʹgit
Ͳ͏͠Α͏ͳ͘ͳͬͨ ؒҧͬͯϒϥϯνΛফͯ͠͠·ͬͨ దʹreset
git
ㅤ ㅤ ㅤ
גࣜձࣾϛΫγΟͰ ΄ͱΜͲͷ෦ॺ͕͍ͬͯ·͢
GitHubͷPull
ྡͷਓͷGitHubͷϓϩδΣΫτΛϑΥʔΫ͠·͢ ϑΥʔΫͨ͠ϦϙδτϦΛखݩʹΫϩʔϯ͠·͢ ࡞ۀ༻ϒϥϯνΛ࡞͠·͢ มߋΛՃ͑ͯίϛοτͯ͠ϓογϡ͠·͢ GitHub͔ΒPull
w (JU#PPL w ͜Θ͘ͳ͍(JU w (JUͷΈ ͖ͤ͜ͷٕज़ه w ݟ͑ͳ͍νΧϥʲ༁ʳ(JUΛϘτϜΞοϓ͔Βཧղ͢Δ
w $PEF4DIPPM5SZ(JU ࢀߟจݙ ΈΜͳಡΜͰΈΑ͏ʂ