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 enhancement
Search
Shin Tokiwa
August 06, 2012
Programming
3
250
git enhancement
#1 git-flow
Shin Tokiwa
August 06, 2012
Tweet
Share
Other Decks in Programming
See All in Programming
個人軟體時代
ethanhuang13
0
340
Refinementsのメソッド定義を4000倍速くした話
alpacatc
0
160
プロパティベーステストによるUIテスト: LLMによるプロパティ定義生成でエッジケースを捉える
tetta_pdnt
0
6.4k
Updates on MLS on Ruby (and maybe more)
sylph01
1
190
テストカバレッジ100%を10年続けて得られた学びと品質
mottyzzz
2
620
スケールする組織の実現に向けた インナーソース育成術 - ISGT2025
teamlab
PRO
2
180
検索機能リプレイスを4ヶ月→2ヶ月に! AI Agentで実現した2倍速リプレイス
fuuki12
1
220
iOSからFlutterへ20代エンジニアの転身とWidget Preview実践
nappannda
0
110
rage against annotate_predecessor
junk0612
0
170
請來的 AI Agent 同事們在寫程式時,怎麼用 pytest 去除各種幻想與盲點
keitheis
0
140
Android StudioのAIコーディングツール、 ぶっちゃけどうなん???
mkeeda
0
110
ProxyによるWindow間RPC機構の構築
syumai
3
1.2k
Featured
See All Featured
Building an army of robots
kneath
306
46k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Embracing the Ebb and Flow
colly
87
4.8k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Done Done
chrislema
185
16k
Fireside Chat
paigeccino
39
3.6k
Navigating Team Friction
lara
189
15k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Transcript
git enhancement #1 git-flow 1 128݄6݄༵
Git ͬͯ·͔͢ʁ • தԝϦϙδτϦ͕ͳͯ͘ར༻Ͱ͖Δ • ϩʔΧϧͰϒϥϯνλάΛࣗ༝ʹ࡞Ͱ͖Δ • ෳͷϦϞʔτϦϙδτϦͱࣗ༝ʹ࿈ܞͰ͖Δ • Pull
Request (GitLab Ͱ Merge Request) ศར • ͳͲͳͲػೳ͕Γͩ͘͞Μʂ 2 128݄6݄༵
݁ߏͳΜͰͰ͖Δ 3 128݄6݄༵
Α͋͘Δޫܠ 4 128݄6݄༵
͓Ε Push ͨ͠Α Α͋͘Δޫܠ 4 128݄6݄༵
͓Ε Push ͨ͠Α ͜ͷ Branch ͳʹʁ Α͋͘Δޫܠ 4 128݄6݄༵
͓Ε Push ͨ͠Α ͜ͷ Branch ͳʹʁ ࠷৽ͲΕΑʁ Α͋͘Δޫܠ 4 128݄6݄༵
͓Ε Push ͨ͠Α ͜ͷ Branch ͳʹʁ ࠷৽ͲΕΑʁ ͜ͷόάमਖ਼Ͳͷ Branch ʹద༻ͨ͠ͷʁ
Α͋͘Δޫܠ 4 128݄6݄༵
ͭ·Γ… 5 128݄6݄༵
ͭ·Γ… ΧΦεͳঢ়گʹ ͳΓ͍͢ʂ 5 128݄6݄༵
ࠓͷຊ 6 128݄6݄༵
ࠓͷຊ git-flow ͕͍͢͝ 6 128݄6݄༵
What’s git-flow? 7 128݄6݄༵
What’s git-flow? • ࢄ͕ͪ͠ͳϒϥϯνΛཧ 7 128݄6݄༵
What’s git-flow? • ࢄ͕ͪ͠ͳϒϥϯνΛཧ • νʔϜͰϒϥϯνϞσϧΛڞ༗ 7 128݄6݄༵
What’s git-flow? • ࢄ͕ͪ͠ͳϒϥϯνΛཧ • νʔϜͰϒϥϯνϞσϧΛڞ༗ • Git ͷॴΛଛͳΘͣʹ Subversion
ͷΑ͏ͳूத ཧͬͪΌ͏ʂ 7 128݄6݄༵
What’s git-flow? • ࢄ͕ͪ͠ͳϒϥϯνΛཧ • νʔϜͰϒϥϯνϞσϧΛڞ༗ • Git ͷॴΛଛͳΘͣʹ Subversion
ͷΑ͏ͳूத ཧͬͪΌ͏ʂ • Ͱͨͩ git ίϚϯυΛϥοϓͯ͠Δ͚ͩ 7 128݄6݄༵
installation of git-flow • Mac OSX • brew install git-flow
• port install git-flow • Ubuntu • aptitude install git-flow • Windows • खॱ͕໘ͳͷͰׂѪ— 8 128݄6݄༵
git-flow branches Branch Name Description master ϦϦʔε༻ϒϥϯν develop ։ൃ༻ϒϥϯν feature/{feature
name} ػೳ։ൃ༻Ұ࣌ϒϥϯν release/{release name} ϦϦʔε༻Ұ࣌ϒϥϯν hotfix/{hotfix name} όάमਖ਼༻Ұ࣌ϒϥϯν support/{support name} αϙʔτ༻Ұ࣌ϒϥϯν {version} λά 9 128݄6݄༵
“master” and “develop” • “master” • ݱࡏϦϦʔε͞Ε͍ͯΔΞϓϦέʔγϣϯͱಉ • “develop” •
։ൃ൛ͷ࠷৽ • ʑػೳ͕Ճ͞Ε͍ͯ͘ײ͡ • ྫ͑։ൃڥͰಈ࡞͍ͯ͠ΔΞϓϦέʔγϣϯ͕ ૬͢Δ 10 128݄6݄༵
“feature” • “develop” Λݩʹ࡞͞ΕΔϒϥϯν • ಛఆͷػೳ։ൃணख࣌ʹ࡞ • ػೳ։ൃ͕ऴྃ͢Δͱ͖ʹ “develop” ʹϚʔδ
• Ϛʔδͱͱʹ “feature” ϒϥϯνഁغ 11 128݄6݄༵
“hotfix” • “master” Λݩʹ࡞͞ΕΔϒϥϯν • ՔಇதͷΞϓϦέʔγϣϯͰݟ͔ͭͬͨόάΛमਖ਼͢Δ ͨΊͷϒϥϯν • όάमਖ਼ணख࣌ʹ࡞ •
όάमਖ਼͕ऴྃ͢Δͱ͖ʹ “master” ͱ “develop” ʹϚʔδ • Ϛʔδͱͱʹ “hotfix” ϒϥϯνഁغ 12 128݄6݄༵
“release” • “develop” Λݩʹ࡞͞ΕΔϒϥϯν • ։ൃதͷ҆ఆ൛ΛϦϦʔε͢Δͱ͖ʹ࡞ • README ϦϦʔεϊʔτΛهड़ •
ϦϦʔελΠϛϯάͰ “master” ͱ “develop” ʹϚʔδ • Ϛʔδͱͱʹ “release” ϒϥϯνഁغ 13 128݄6݄༵
git-flow hands-on 14 128݄6݄༵
git-flow hands-on ͕࣌ؒ͋Ε ϥΠϒͰ ͬͯΈ·͢ 14 128݄6݄༵
؆୯ͳ·ͱΊ 15 128݄6݄༵
ػೳ։ൃ͢Δ • git flow feature start 1122_retrieve_gn • ͝ʹΐ͝ʹΐ։ൃ…ςετΕͣʹ… •
git flow feature finish 1122_retrieve_gn • “develop” ʹػೳ͕औΓࠐ·ΕΔ 16 128݄6݄༵
όάΛमਖ਼͢Δ • git flow hotfix start 1234_nullpo • ͝ʹΐ͝ʹΐमਖ਼͢Δ…વςετʂ •
git flow hotfix finish 1234_nullpo • “master” ͱ “develop” ʹऔΓࠐ·ΕΔ 17 128݄6݄༵
όάΛमਖ਼͢Δ • git flow hotfix start 1234_nullpo • ͝ʹΐ͝ʹΐमਖ਼͢Δ…વςετʂ •
git flow hotfix finish 1234_nullpo • “master” ͱ “develop” ʹऔΓࠐ·ΕΔ ࣗಈతʹ λά͚ 17 128݄6݄༵
ϦϦʔε͢Δ • git flow release start 1.2.1 • ϦϦʔεϊʔτΛॻ͜͏ʂ •
͜Μͳػೳ͕Ճ͞Εͨ • ͜Μͳόά͕मਖ਼͞Εͨ • git flow release finish 1.2.1 • “master” ͱ “develop” ʹऔΓࠐ·ΕΔ 18 128݄6݄༵
ϦϦʔε͢Δ • git flow release start 1.2.1 • ϦϦʔεϊʔτΛॻ͜͏ʂ •
͜Μͳػೳ͕Ճ͞Εͨ • ͜Μͳόά͕मਖ਼͞Εͨ • git flow release finish 1.2.1 • “master” ͱ “develop” ʹऔΓࠐ·ΕΔ ࣗಈతʹ λά͚ 18 128݄6݄༵
refs • nvie/gitflow • https://github.com/nvie/gitflow/ • A successful Git branching
model • http://nvie.com/posts/a-successful-git-branching-model/ • git-flow ʹΑΔϒϥϯνͷཧ • http://www.oreilly.co.jp/community/blog/2011/11/branch- model-with-git-flow.html 19 128݄6݄༵
·ͩ·͍ͩ͜ͳͤͯͳ͍ͷͰ͕͢ git-flow ʹΑͬͯιʔεཧ͕Θ͔Γ͘͢ͳΔ ͱײ͍ͯ͡·͢ 20 128݄6݄༵
·ͩ·͍ͩ͜ͳͤͯͳ͍ͷͰ͕͢ git-flow ʹΑͬͯιʔεཧ͕Θ͔Γ͘͢ͳΔ ͱײ͍ͯ͡·͢ ͏Ͷ 20 128݄6݄༵
͓ΘΓ 21 128݄6݄༵