Uber git workflow

  • 532 views
Uploaded on

Uber's Git Workflow Presentation

Uber's Git Workflow Presentation

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
532
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
2
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • \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

Transcript

  • 1. Why I Use Textmate... Glenn Roberts @glennrob glenn.roberts@siyelo.com
  • 2. ...To Squash Commits... Glenn Roberts @glennrob glenn.roberts@siyelo.com
  • 3. ...During an Interactive Rebase... Glenn Roberts @glennrob glenn.roberts@siyelo.com
  • 4. ...In My Uber Git Workflow... Glenn Roberts @glennrob glenn.roberts@siyelo.com
  • 5. ...Which UsesBranching & Merging... Glenn Roberts @glennrob glenn.roberts@siyelo.com
  • 6. ... Like a Boss. Glenn Roberts @glennrob glenn.roberts@siyelo.com
  • 7. Sorry Farrel, already used up all myslide quota
  • 8. • Why your git workflow is important• How we do it @ Siyelo• Random slides to fill the last 4 minutes of a 5 minute talk.
  • 9. Source control basics. Nailed it.
  • 10. • feature branches• commit early, often• interactive rebase, squash• ship that mother.
  • 11. • old branch labels• partial/no squashing (OK)• nasty git log• whats in a feature?• whats in a feature-set?
  • 12. Evolve your team workflow.
  • 13. The Nvie.com model:
  • 14. 1. The Major Branches Text Author: Vincent Driessen Original blog post: http://nvie.com/archives/323 License: Creative Commons
  • 15. w/ 3 types of supporting branches...
  • 16. 2. Feature Branches Text
  • 17. 1a) Merge like a Boss with --no-ff Text Author: Vincent Driessen Original blog post: http://nvie.com/archives/323 License: Creative Commons
  • 18. 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
  • 19. • Stop pulling, please...
  • 20. Every merge is sacred fetch and rebase instead
  • 21. 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
  • 22. 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
  • 23. 3. Hotfix Branches Author: Vincent Driessen Original blog post: http://nvie.com/archives/323 License: Creative Commons
  • 24. • [dev] branch • keep stable • rebase feature branches • avoid pulling• use merge commits (--no-ff )• use release & hotfix branches• [master] commit == a release.
  • 25. ... we dont need your witchcraft!
  • 26. j/k. Git Flow is rad.But understand the basics first.
  • 27. Share and Enjoy! Author: Glenn Roberts Rubyfuza 2011 License: Creative Commons