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 Workflows: Beware of merge conflicts, they ...
Search
Olawale
July 07, 2023
Programming
0
130
Git Workflows: Beware of merge conflicts, they bite you!
Olawale
July 07, 2023
Tweet
Share
Other Decks in Programming
See All in Programming
ReadMoreTextView
fornewid
1
480
NPOでのDevinの活用
codeforeveryone
0
330
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
150
C++20 射影変換
faithandbrave
0
530
Deep Dive into ~/.claude/projects
hiragram
8
1.5k
Hypervel - A Coroutine Framework for Laravel Artisans
albertcht
1
100
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
190
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
420
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
230
Cline指示通りに動かない? AI小説エージェントで学ぶ指示書の書き方と自動アップデートの仕組み
kamomeashizawa
1
580
Elixir で IoT 開発、 Nerves なら簡単にできる!?
pojiro
1
150
Is Xcode slowly dying out in 2025?
uetyo
1
190
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Raft: Consensus for Rubyists
vanstee
140
7k
Side Projects
sachag
455
42k
Visualization
eitanlees
146
16k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Adopting Sorbet at Scale
ufuk
77
9.4k
Facilitating Awesome Meetings
lara
54
6.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Why You Should Never Use an ORM
jnunemaker
PRO
57
9.4k
Stop Working from a Prison Cell
hatefulcrawdad
270
20k
Transcript
None
Outline • Why do we need them? • What are
they? • How do I use them? • Useful git commands
Why • Inefficient Release Process • Code conflicts • Scalability
concerns
Git Workflow Git Workflow is a git branching model for
teams that scales.
Git Workflow - Types • Git Flow • Github flow
• Trunk-based flow • Space Git Flow
Git Flow - Main Branches main develop For production code
only! Development code
Git Flow - Supporting Branches main develop Feature branches $
git checkout -b myfeature develop
Git Flow - Supporting Branches main develop feature branches $
git checkout -b release-1.0 develop release branches release branch for 1.0 release branch 1.1
main develop feature branches release branches release branch for 1.0
release branch 1.1 hotfixes
Useful git commands Git merge vs Git Rebase Both are
used for incorporating changes from one branch to another!
Git merge vs Git Rebase git merge feature develop develop
Git merge Result develop New Commit
Git Rebase Result develop git checkout feature git rebase develop
• No new merge commit • It results in a linear git history
Git Rebase - Interactive mode git checkout feature git rebase
-i develop pick 33d5b7a Add paypal payment method #1 pick 9480b3d Fix something #2 pick 5c67e61 Add idea payment method #3 develop
Git Rebase - Interactive mode SQUASHING! pick 33d5b7a Add paypal
payment method #1 fixup 9480b3d Fix something #2 pick 5c67e61 Add idea payment method #3 develop
Git Rebase The golden rule of git rebase is to
never use it on public branches
Questions?