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 flow
Search
cjies
September 22, 2016
Technology
0
330
git flow
加速提升工作效率 & 品質 🔥
cjies
September 22, 2016
Tweet
Share
More Decks by cjies
See All by cjies
es module bundling with webpack 2
cjies
1
560
git, let it flow!
cjies
9
2.3k
Other Decks in Technology
See All in Technology
OCIjp_Oracle AI World_Recap
shinpy
1
180
ストレージエンジニアの仕事と、近年の計算機について / 第58回 情報科学若手の会
pfn
PRO
3
860
オブザーバビリティと育てた ID管理・認証認可基盤の歩み / The Journey of an ID Management, Authentication, and Authorization Platform Nurtured with Observability
kaminashi
1
730
生成AI時代のPythonセキュリティとガバナンス
abenben
0
140
マルチエージェントのチームビルディング_2025-10-25
shinoyamada
0
180
SOTA競争から人間を超える画像認識へ
shinya7y
0
550
Building a cloud native business on open source
lizrice
0
180
Linux カーネルが支えるコンテナの仕組み / LF Japan Community Days 2025 Osaka
tenforward
1
130
AI-Readyを目指した非構造化データのメダリオンアーキテクチャ
r_miura
1
330
ゼロコード計装導入後のカスタム計装でさらに可観測性を高めよう
sansantech
PRO
1
460
Observability — Extending Into Incident Response
nari_ex
1
460
現場の壁を乗り越えて、 「計装注入」が拓く オブザーバビリティ / Beyond the Field Barriers: Instrumentation Injection and the Future of Observability
aoto
PRO
1
610
Featured
See All Featured
KATA
mclloyd
PRO
32
15k
The Language of Interfaces
destraynor
162
25k
Making Projects Easy
brettharned
120
6.4k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
Being A Developer After 40
akosma
91
590k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Building Better People: How to give real-time feedback that sticks.
wjessup
369
20k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
How GitHub (no longer) Works
holman
315
140k
Transcript
git flow 加速提升⼯工作效率 & 品質 CJ 2016/09/22 GSS
why git flow?
確保開發順暢...
多⼈人共同開發問題 • 各⾃自寫各的,不不知道怎麼整合? • 整合時不不⼩小⼼心覆蓋了了別⼈人的東⻄西... • 上傳有問題的 code 導致程式炸裂,⽽而⾃自⼰己不不知道... •
沒辦法確認哪個點是可以 work 的... • 最後⼤大家被搞得⼀一團亂...
pros of git flow • 更更加了了解專案整體、各個⽀支線的發展狀狀況 • 可各⾃自各開發⽀支線,不不會被其他⼈人影響 • 如果主線崩壞也可輕鬆
rollback • 分⼯工更更加輕鬆 開開⼼心⼼心下班去
what is git flow? 講這麼多... then
single branching master
develop hotfix release feature feature master v1.0 v1.1 v1.2 git
flow introduced by Vincent Driessen
master & develop develop master • 永遠在 production-ready 狀狀態 •
開發⽤用主線,永遠是最新的狀狀態
feature branch • 從 develop 分⽀支出來來開發新功能 • 完成後合併回 develop •
可多個 features 並⾏行行 • ⽤用完即棄 feature 1 develop feature 2
release branch • develop 發佈到 master 的記錄錄 • 過程中只修 bugs
• 完成後合併進 master & develop • ⽤用版號命名 release develop master
hotfix branch • 對 master 做緊急修正 • 過程中⼀一樣只修 bugs •
完成後合併進 master & develop • ⽤用完即棄 hotfix master develop
how to use git flow? 那...
⾸首先打開你的 terminal… $ git flow init
wtf!
SourceTree 其實有內奸內建 git flow 功能
可以從 toolbar 內開啟
Repository > Git flow / Hg flow
initialise
start a new branch
finish a branch
or merge
完成 release 或 hotfix branch 時, 會⾃自動幫你合併到 master & develop
a beautiful flow https://ihower.tw/blog/archives/5140
demo time
notices • merge 前記得要先 fetch or rebase,確保狀狀態是最新的 • 不不對主線直接 commit,必須另開⽀支援性
branch 再進⾏行行修改 • 必須 commit merge changes • 開 pull requests 做 code reviews
pull requests 除了了 git flow 外,還有⼀一個很重要的
pull requests merge requests
what is pull requests? feature develop 利利⽤用 pull requests 確認是否能進⾏行行
merge ?
• 描述做了了什什麼事情及⽬目的 • 可進⾏行行討論 & code reviews • 清楚知道哪個部分有被更更動 •
留留下記錄錄,⽅方便便之後重新翻閱 (merge requests in gitlab)
pull requests at iCHEF • 特定 template, 描述⽬目的&內容 • 必須進⾏行行
code reviews • 通過 CI 檢測 • 如有界⾯面更更動需提供截圖 • 不不能擺著超過⼀一週
獲得2個以上的『OK』才能通關 pull requests at iCHEF
github universe 2016 code better with reviews https://github.com/universe-2016
NEW approve & request changes
change base branch
references • http://nvie.com/posts/a-successful-git-branching-model • https://ihower.tw/blog/archives/5140 • https://yangsu.github.io/pull-request-tutorial • https://about.gitlab.com/2014/09/29/gitlab-flow
$ exit thanks for your listening