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 Branch
Search
高見龍
June 04, 2018
Technology
0
370
Git Branch
Git 小聚:Git 跟你想的不一樣(Part 1)
高見龍
June 04, 2018
Tweet
Share
More Decks by 高見龍
See All by 高見龍
為你自己學 Python
eddie
0
580
Generative AI 年會小聚 - AI 教我寫程式
eddie
0
75
讓數據說話:用 Python、Prometheus 和 Grafana 講故事
eddie
0
550
AI 時代的程式語言學習法
eddie
0
110
前端模組解放運動 - importmap
eddie
0
1.4k
Git 和 DevOps - 在混亂的流星群開發流程中找到小確幸
eddie
1
1.1k
模組化前端開發:從亂七八糟到組織有序
eddie
0
1.6k
被 Vue 框架耽誤的建置工具
eddie
2
1k
開開心心寫測試,你的程式碼也會微笑
eddie
1
1.2k
Other Decks in Technology
See All in Technology
Multitenant 23ai の全貌 - 機能・設計・実装・運用からマイクロサービスまで
oracle4engineer
PRO
2
120
SpannerとAurora DSQLの同時実行制御の違いに想いを馳せる
masakikato5
0
570
「ラベルにとらわれない」エンジニアでいること/Be an engineer beyond labels
kaonavi
0
150
サーバシステムを無理なくコンテナ移行する際に伝えたい4つのポイント/Container_Happy_Migration_Method
ozawa
1
100
Explainable Software Engineering in the Public Sector
avandeursen
0
370
LINE Notify互換のボットを作った話
kenichirokimura
0
180
職種に名前が付く、ということ/The fact that a job title has a name
bitkey
1
250
OPENLOGI Company Profile
hr01
0
61k
30代エンジニアが考える、エンジニア生存戦略~~セキュリティを添えて~~
masakiokuda
4
2k
モノリスの認知負荷に立ち向かう、コードの所有者という思想と現実
kzkmaeda
0
110
初めてのPostgreSQLメジャーバージョンアップ
kkato1
0
440
DevOps文化を育むQA 〜カルチャーバブルを生み出す戦略〜 / 20250317 Atsushi Funahashi
shift_evolve
1
110
Featured
See All Featured
A better future with KSS
kneath
238
17k
Unsuck your backbone
ammeep
670
57k
Docker and Python
trallard
44
3.3k
It's Worth the Effort
3n
184
28k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.3k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
Thoughts on Productivity
jonyablonski
69
4.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
Scaling GitHub
holman
459
140k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
2.9k
Transcript
(JU᪑你తෆҰᒬ 高見龍 1BSUࢧ
ൣྫ檔Ҋ https://bit.ly/2IQEwUR
ࣗզհ
a.k.a Eddie 愛現! 喜歡冷門的玩具 Ruby/Rails/iOS app 開發者、講師 Ruby 技術推廣、教育、諮詢 台灣、日本等國內外
Ruby 技術研討會講者 目前於五倍紅寶石擔任紅寶石鑑定商職務 部落格:https://kaochenlong.com 高見龍 photo by Eddie @eddiekao
發售中! https://railsbook.tw/
發售中! https://gitbook.tw/
։࢝೭લ
༗ᔒ༗ୈҰ࣍ᡒա (JUṜࡾݸࣈతਓ
https://gitbook.tw/
࡞্༗ࡏ༻(JUɼୠ ༗(JUᙛ'51ࡏ༻ʁ
ိݯɿIUUQTYLDEDPN ʮṜबੋ(JUɼሏ༻Ұछඬ྄ తࢄࣜᅷܕཧܕతٕज़ိ ᪦զ၇ሢҊత㚎༰ʯ ʮࠅʂṜཁዎኄ༻ʁʯ ʮෆಓɼେ֓बੋهҰࠣऴػ ࢦྩ ɼ ࢦྩᏏҰᏏ䈕Ҋब။ಉ㑊ྃ ɻ
Ռᚙੜɼઌ䈕Ҋઌඋ㟨Ұ 㟨౸ผతํɼሢҊ䜤ᎃɼવޙ ॏ৽ԼࡌҰ㟨શ৽తሢҊबߦྃ ɻ ʯ
ຊจ։࢝
൛ຊ߇੍ 7FSTJPO$POUSPM
! 那個...你有聽過 Git 嗎? 那是什麼? " 啊就一種分散式的版本控制系統啊! # 分散? 版本?
? ? ? ?
ॄኄ൛ຊ ཁ߇੍ॄኄ
ॴҎɼॄኄੋʮ൛ຊʯ
版本2 版本3 版本4 版本5 版本1 2016/2/8 2016/2/10 2016/5/8 2016/8/22 2016/11/28
ࢄࣜ
$ Sherly " Eddie % Emily & Picasso Octocat 我做好三角
型囉! 我改了兩個 圈圈! 收到! 收到! 收到! 我刪了一個 方塊! OK, 好! OK, 好!
උ份 ब૾؝༡ፍత࣌ީ။Ṷଘ༡ፍਐҰᒬ
㑖࢙ل㑚ٴᨽᎦ ग़ࣄత࣌ީ你။ಓੋኺॄኄ࣌ީ։࢝ब༗ɼ Ҏٴಓ֘ፙ୭ိഃ
$PODVSSFOU7FSTJPOT4ZTUFN $74 TJODF
4VCWFSTJPO 47/
ੋ
Ռᔒ༗࿏ɼ҃ੋ47/త ثނোత࣌ީศແ๏༻
ᔒ༗࿏बෆೳሜDPEFʁ (JU)VCᆦᎃత࣌ީେՈ။։؝সత說ՄҎԼ൝ྃ 哈囉, 你好!
(JU
-JOVT5PSWBMET GPSNBOBHJOH-JOVYLFSOFM TPVSDFDPEFJO photo by Krd
Ұఆཁ༻ऴػࢦྩ嗎
None
ࢧ #SBODI
ሣࢧతޡղ 你૾தతࢧॄኄᒬࢠ
photo by Mark Fischer
photo by Caroline
ࢧੋҰு షࡏݸ$PNNJU্తషࢴ
ࢧศٓత ҝॄኄ
ॄኄ࣌ީཁ༻ࢧ
৽⃧ࢧDBU $ git branch cat ᒾࢹࢧ $ git branch cat
* master $ git branch -d cat Deleted branch cat (was cb96971). ႟আࢧDBU
౸DBUࢧ $ git checkout cat ౸EPHࢧɼՌ֘ࢧෆଘࡏɼ ။ࣗಈݐཱ৽తࢧ $ git checkout
-b dog
߹ซࢧ
ଖመࢧੋᔒ辦๏߹ซత 你߹ซతੋࢧॴࢦ౸త$PNNJU
߹ซࢧDBU $ git checkout master $ git merge cat
߹ซաతࢧՄҎ႟ᎃ嗎
ཁዎኄऔফ߶߶Ṝ࣍త߹ซ 㐫گ
զ༗ࠣਓతࢧ༗ىိ૾ ࢧతʮখࣖ朵ʯઢᅷɼዎኄ զతࢧᔒ༗ 就是這種東西 㐫گ
Ҽҝෆधཁ啊ʂ
$ git merge cat --no-ff ඇշ߹ซ 'BTI'PSXBSE
ᚙੜিಥ $POqJDU ྃɼዎኄ辦 㐫گ
༻3FCBTF߹ซ
photo by UGA College of Ag & Environmental Sciences
e076c8 35c42e b43d89 f17acb 76ccce 981ad3 dog cat master HEAD
$ 3FCBTF߹ซ
35c42e 76ccce 981ad3 dog master b43d89 f17acb cat HEAD $
git rebase dog 3FCBTF߹ซ
f17acb b43d89 35c42e 76ccce 981ad3 dog master b43d89 f17acb cat
HEAD $ git rebase dog c871e3 ab12cd cat HEAD 3FCBTF߹ซ
3FCBTFෆੋႩԼష্
ཁዎኄऔফ ߶߶Ṝ࣍తSFCBTF߹ซ 㐫گ
ଖሏৗݟ㐫گ
༗ࠣൺֱػີత檔Ҋզෆ์ࡏ (JUཫ໘Ұىඋ份 㐫گ
HJUJHOPSF https://github.com/github/gitignore
你ෆখ৺ாᥒີᛰሜࡏݸ檔 Ҋཫɼఏަࣕਪग़ڈྃ 㐫گ
$ git filter-branch --tree-filter "rm -f config/password.txt" ሣ㑌ݸઅᴍ႟আಛఆ檔Ҋ
ਫ਼ਆෆɼෆখ৺༌ೖྃHJU SFTFU)&"%?IBSEࢦྩɼ檔 Ҋؐٹಘճိ嗎 㐫گ
ௐ閱SFqPH $ git reflog $ git reset --hard 823520ed ճ౸SFTFU೭લతઅᴍ
લҰఱᔒਭɼෆখ৺ؐᔒ߹ ซతࢧ႟ᎃྃɼٹಘճိ嗎 㐫گ
ௐ閱SFqPH $ git reflog $ git checkout -b new_branch_name 823520ed
༻ಹݸઅᴍ၏ग़৽తCSBODI
ҝॄኄ༗࣌ީ။ਪෆ্ڈʁ
ख䳾ଠຫ
ຊိෆ༻ Ṝটతʂ
ߋଟ㐫گɼჩ閱 IUUQTHJUCPPLUX
⾼高⾒見見龍 Blog Facebook Twitter Email Mobile https://kaochenlong.com https://www.facebook.com/eddiekao https://twitter.com/eddiekao
[email protected]
+886-928-617-687
(JUখঞ
ଘეҬ 4UBHJOH"SFB ࡞㑚 8PSLJOH%JSFDUPSZ Ṷଘݿ ຊ 3FQPTJUPSZ HJUBEE HJUDPNNJU
HJUQVTI HJUQVMM HJUSFTFU HJUSNDBDIFE Ṷଘݿ ԕ 3FQPTJUPSZ
暫存區域 Staging Area 工作目錄 Working Directory 儲存庫(本地) Repository git add
git commit git reset git rm --cached 儲存庫(遠端) Repository git push git pull $ git config --global user.name "5xruby" $ git config --global user.email "
[email protected]
" 設定: $ git init 初始化: $ git add FILENAME 把檔案加到暫存區域: $ git status 查看狀態: $ git commit -m "add index.html" 提交: $ git log 檢視紀錄: $ git reset HEAD^ 取消最後一次提交: $ git branch 5xruby 新增分支 "5xruby": $ git branch 檢視目前分支: $ git branch -d 5xruby 刪除已合併分支 "5xruby": $ git checkout 5xruby 切換分支到 "5xruby" : $ git merge 5xruby 合併分支 "5xruby": $ git remote add origin REMOTE_URL 新增遠端節點 "origin": $ git remote -v 檢視遠端節點: $ git remote rm origin 刪除遠端節點 "origin": $ git push origin master 把 "master" 分支內容推往 "origin" 節點: $ git pull origin master 把遠端 "origin" 節點的 "master" 拉回本機並進行合併: