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
350
Git Branch
Git 小聚:Git 跟你想的不一樣(Part 1)
高見龍
June 04, 2018
Tweet
Share
More Decks by 高見龍
See All by 高見龍
Generative AI 年會小聚 - AI 教我寫程式
eddie
0
15
讓數據說話:用 Python、Prometheus 和 Grafana 講故事
eddie
0
400
AI 時代的程式語言學習法
eddie
0
59
前端模組解放運動 - importmap
eddie
0
1.2k
Git 和 DevOps - 在混亂的流星群開發流程中找到小確幸
eddie
1
1.1k
模組化前端開發:從亂七八糟到組織有序
eddie
0
1.5k
被 Vue 框架耽誤的建置工具
eddie
2
950
開開心心寫測試,你的程式碼也會微笑
eddie
1
1.2k
Functional Ruby
eddie
1
260
Other Decks in Technology
See All in Technology
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
170
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
元旅行会社の情シス部員が教えるおすすめなre:Inventへの行き方 / What is the most efficient way to re:Invent
naospon
2
340
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
170
SREによる隣接領域への越境とその先の信頼性
shonansurvivors
2
520
DMARC 対応の話 - MIXI CTO オフィスアワー #04
bbqallstars
1
160
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
220
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
290
Evangelismo técnico: ¿qué, cómo y por qué?
trishagee
0
360
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.1k
信頼性に挑む中で拡張できる・得られる1人のスキルセットとは?
ken5scal
2
530
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Scaling GitHub
holman
458
140k
KATA
mclloyd
29
14k
Documentation Writing (for coders)
carmenintech
65
4.4k
Code Reviewing Like a Champion
maltzj
520
39k
How STYLIGHT went responsive
nonsquared
95
5.2k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.8k
A Philosophy of Restraint
colly
203
16k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
169
50k
Code Review Best Practice
trishagee
64
17k
Navigating Team Friction
lara
183
14k
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" 拉回本機並進行合併: