Behold, Spendsetter's new, improved, and more-refined git process.
how gitsjanuary 22, 2015
View Slide
git flow
git flow github flow
git flow github flowspendsetter flow
git flow github flowspendsetter flow(no, we’re not calling it that)
main principles
two main branches
mastertwo main branches
masterdeveloptwo main branches
master = what’s on prod
master = what’s on proddevelop = what’s on stage
work from develop
hotfixes from master
everything is reviewed
all work is tied to aJIRA ticket
work process
update base branchstep 1
step 1
git fetch step 1
git fetch step 1git merge /branch
git pullstep 1
git pullstep 1git pull
create new branchstep 2
step 2
git checkout -b step 2
namesstep 2
namesstep 2feature: delete-campaign
namesstep 2feature: delete-campaignbug: fix-delete-campaign
namesstep 2feature: delete-campaignbug: fix-delete-campaignjira ticket: amp-123
do workstep 3
step 3
your local env = your businessstep 3
(maybe consider rebasing?)step 3
open a pull requeststep 4
open it at any timestep 4
indicate status in titlestep 4
example: [WIP]step 4
ready for reviewstep 5
clear, succinct titlestep 5
a long-enough descriptionstep 5
reviewer needs contextstep 5
review process
the feedback loopstep 6
the feedback loopstep 6receive feedback
the feedback loopstep 6receive feedbackmake change or explain
the feedback loopstep 6receive feedbackmake change or explainrepeat
ready for mergestep 7
how to clean upstep 7
how to clean upstep 7update base branch
how to clean upstep 7update base branchgit rebase -i
how to clean upstep 7update base branchgit rebase -i git push --force origin
quick note on commit messagesstep 7
step 7
first line = summarystep 7
first line = summarystep 772 characters, max
first line = summarystep 772 characters, maxpresent tense
first line = summarystep 772 characters, maxpresent tensedoesn’t end in a period
one blank linestep 7
one blank linestep 7prose description
one blank linestep 7prose descriptionuse github-flavored markdown
one blank linestep 7prose descriptionuse github-flavored markdownmention relevant JIRA tickets
Fixes deleting campaignsThe resource collection wasincorrect on the `DELETE` URL forcampaigns. It was `campaign` andshould have been `campaigns`.Fixes AMP-123.step 7
merge your pull requeststep 8
goto 1step 9
how gitsquestions?