• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Uber git workflow
 

Uber git workflow

on

  • 1,312 views

Git workflow tips - local branching and release management.

Git workflow tips - local branching and release management.

Presented at RubyFuZa 2011, Cape Town.

Statistics

Views

Total Views
1,312
Views on SlideShare
1,312
Embed Views
0

Actions

Likes
0
Downloads
12
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Some chaos in the repo.\n Need: An understandable model\n
  • Rein Henrich’s agile git workflow\n
  • when/what to release? to staging - to prod ?\nbugfixes?\n
  • \n
  • Vincent Driessen\n
  • a merge with master is a prod release by definition\n
  • \n
  • \n
  • rebase origin/dev! first\n\nsquash if you want\n\n
  • rebase origin/dev! first\n\nsquash if you want\n\n
  • \n
  • \n
  • with no-ff you get a\n
  • \n
  • \n
  • tasty spaghetti\n
  • \n
  • \n
  • \n
  • \n

Uber git workflow Uber git workflow Presentation Transcript

  • Why I Use Textmate... Glenn Roberts @glennrob glenn.roberts@siyelo.com
  • ...To Squash Commits... Glenn Roberts @glennrob glenn.roberts@siyelo.com
  • ...During an Interactive Rebase... Glenn Roberts @glennrob glenn.roberts@siyelo.com
  • ...In My Uber Git Workflow... Glenn Roberts @glennrob glenn.roberts@siyelo.com
  • ...Which UsesBranching & Merging... Glenn Roberts @glennrob glenn.roberts@siyelo.com
  • ... Like a Boss. Glenn Roberts @glennrob glenn.roberts@siyelo.com
  • Sorry Farrel, already used up all myslide quota
  • • Why your git workflow is important• How we do it @ Siyelo• Random slides to fill the last 4 minutes of a 5 minute talk.
  • Source control basics. Nailed it.
  • • feature branches• commit early, often• interactive rebase, squash• ship that mother.
  • • old branch labels• partial/no squashing (OK)• nasty git log• whats in a feature?• whats in a feature-set?
  • Evolve your team workflow.
  • The Nvie.com model:
  • 1. The Major Branches Text Author: Vincent Driessen Original blog post: http://nvie.com/archives/323 License: Creative Commons
  • w/ 3 types of supporting branches...
  • 2. Feature Branches Text
  • 1a) Merge like a Boss with --no-ff Text Author: Vincent Driessen Original blog post: http://nvie.com/archives/323 License: Creative Commons
  • 1b) Always merge with intent --no-ff on the ‘major’ branches[branch "dev"] mergeoptions = --no-ff --no-commit[branch "master"] mergeoptions = --no-ff --no-commit
  • • Stop pulling, please...
  • Every merge is sacred fetch and rebase instead
  • 1c) Nice merge commit changelog# ~/.gitconfig[merge] summary = true Merge branch v0.9.5 * v0.9.5: (25 commits) refactor ambiguous budget? & spend? methods fix failing specs
  • 2. Release Branches dev release branches master Start of release branch for 1.0 From this point on,“next release” means Only bug xes! the release after 1.0 Tag 1.0 Bug xes merged back into dev Author: Vincent Driessen Original blog post: http://nvie.com/archives/323 License: Creative Commons
  • 3. Hotfix Branches Author: Vincent Driessen Original blog post: http://nvie.com/archives/323 License: Creative Commons
  • • [dev] branch • keep stable • rebase feature branches • avoid pulling• use merge commits (--no-ff )• use release & hotfix branches• [master] commit == a release.
  • ... we dont need your witchcraft!
  • j/k. Git Flow is rad.But understand the basics first.
  • Share and Enjoy! Author: Glenn Roberts Rubyfuza 2011 License: Creative Commons