Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
すごいGit楽しく学ぼう
Search
MIXI ENGINEERS
PRO
May 12, 2015
Programming
47
28k
すごいGit楽しく学ぼう
blog記事:
http://alpha.mixi.co.jp/entry/20150513
MIXI ENGINEERS
PRO
May 12, 2015
Tweet
Share
More Decks by MIXI ENGINEERS
See All by MIXI ENGINEERS
「モンスターストライク」の運営を支えるデータ分析基盤の歴史と進化 / History and evolution of the data analysis infrastructure supporting “Monster Strike” operations
mixi_engineers
PRO
3
120
【全貌公開】 MIXI の Atlassian Cloud 移行の裏側 / Behind MIXI's Migration to Atlassian Cloud
mixi_engineers
PRO
0
200
MIXI TECH NOTE #12
mixi_engineers
PRO
2
26
運営11年目タイトルを守る最強の盾の有効性と活用法
mixi_engineers
PRO
2
280
MIXI における技術広報とその役割
mixi_engineers
PRO
2
290
セキュリティ監視の内製化 効率とリスク
mixi_engineers
PRO
8
2.5k
IT企業でロボットを作った話 / A story about building a robot in an IT company
mixi_engineers
PRO
2
110
「共闘ことばRPG コトダマン」 SREチーム流 アプリのユーザー体験向上を支えるオブザーバビリティ
mixi_engineers
PRO
1
290
MIXI M のこれまでとこれから / Welcome Fintech Community #2
mixi_engineers
PRO
1
260
Other Decks in Programming
See All in Programming
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
480
17年周年のWebアプリケーションにTanStack Queryを導入する / Implementing TanStack Query in a 17th Anniversary Web Application
saitolume
0
250
Асинхронность неизбежна: как мы проектировали сервис уведомлений
lamodatech
0
840
Androidアプリのモジュール分割における:x:commonを考える
okuzawats
1
140
フロントエンドのディレクトリ構成どうしてる? Feature-Sliced Design 導入体験談
osakatechlab
8
4.1k
선언형 UI에서의 상태관리
l2hyunwoo
0
180
テストコード書いてみませんか?
onopon
2
130
PHPUnitしか使ってこなかった 一般PHPerがPestに乗り換えた実録
mashirou1234
0
230
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
830
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
3
300
htmxって知っていますか?次世代のHTML
hiro_ghap1
0
340
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.7k
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
Fireside Chat
paigeccino
34
3.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
28
2.1k
What's in a price? How to price your products and services
michaelherold
243
12k
The World Runs on Bad Software
bkeepers
PRO
65
11k
KATA
mclloyd
29
14k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Done Done
chrislema
181
16k
Rails Girls Zürich Keynote
gr2m
94
13k
Side Projects
sachag
452
42k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
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 ࢀߟจݙ ΈΜͳಡΜͰΈΑ͏ʂ