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
380
Git Branch
Git 小聚:Git 跟你想的不一樣(Part 1)
高見龍
June 04, 2018
Tweet
Share
More Decks by 高見龍
See All by 高見龍
AI Agent 時代的開發者生存指南
eddie
4
2k
print("Hello, World")
eddie
2
570
為你自己學 Python - 冷知識篇
eddie
1
380
為你自己學 Python
eddie
0
690
Generative AI 年會小聚 - AI 教我寫程式
eddie
0
140
讓數據說話:用 Python、Prometheus 和 Grafana 講故事
eddie
0
670
AI 時代的程式語言學習法
eddie
0
180
前端模組解放運動 - importmap
eddie
0
1.4k
Git 和 DevOps - 在混亂的流星群開發流程中找到小確幸
eddie
1
1.2k
Other Decks in Technology
See All in Technology
AIフル活用で挑む!空間アプリ開発のリアル
taat
0
110
OpenTelemetry が拡げる Gemini CLI の可観測性
phaya72
2
930
20251007: What happens when multi-agent systems become larger? (CyberAgent, Inc)
ornew
1
500
Codexとも仲良く。CodeRabbit CLIの紹介
moongift
PRO
1
260
組織改革から開発効率向上まで! - 成功事例から見えたAI活用のポイント - / 20251016 Tetsuharu Kokaki
shift_evolve
PRO
2
210
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
12
81k
フレームワークを意識させないワークショップづくり
keigosuda
0
230
Kubernetes self-healing of your workload
hwchiu
0
300
[OCI Skill Mapping] AWSユーザーのためのOCI – IaaS編(Compute/Storage/Networking) (2025年10月8日開催)
oracle4engineer
PRO
1
110
会社を支える Pythonという言語戦略 ~なぜPythonを主要言語にしているのか?~
curekoshimizu
1
170
WEBサービスを成り立たせるAWSサービス
takano0131
1
190
Okta Identity Governanceで実現する最小権限の原則 / Implementing the Principle of Least Privilege with Okta Identity Governance
tatsumin39
0
100
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
A better future with KSS
kneath
239
18k
Side Projects
sachag
455
43k
Speed Design
sergeychernyshev
32
1.2k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
How GitHub (no longer) Works
holman
315
140k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Git: the NoSQL Database
bkeepers
PRO
431
66k
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" 拉回本機並進行合併: