Silicon Valley Code Camp : October 11th and 12th 2014
Tim Pettersen is a veteran Java developer at Atlassian. After seven years of working on JIRA, Stash and other developer tools out of Atlassian's Australian office, he made the move to San Francisco. Today, Tim's official job title is Developer Provocateur.
Tim thinks that all software, but particularly developer tools, should be built with extensibility in mind. He splits his days between building tools and platform APIs for Atlassian's developer ecosystem and blogging or speaking about developer tools, API design and building hackable products.
Tim also claims the first commit to Stash, Atlassian's enterprise Git repository management tool. His time on Stash taught him more about Git than is probably healthy, and he enjoys regularly speaking and blogging about Git arcanery.
Beyond his day job, Tim enjoys hacking on Android games and 3D graphics. His current pet project is a libgdx-powered arcade-style shooter that he hopes to release to critical acclaim later this year (although this is the 3rd year he's said that).
This tutorial is intended for developers and build engineers who are looking to migrate to Git or who are already using Git but feel that they're not getting the most out of their workflow.
During the presentation I'll cover:
-an introduction to Git, focusing on its numerous advantages over centralized version control systems as relates to collaborative workflows
-tips and tools for migrating to Git (focusing on the migration path from SVN)
-how to work with very large or long lived repositories
- the fundamental elements that comprise every good Git workflow, including:
a discussion of rebasing in a team context (including why, when and how to use it)
automatic per-branch CI builds
pull request reviews with pre-merge quality checks
one click deployments to dogfood, staging and prod
a case study of how these elements are used to form Atlassian's SaaS workflows, that are used to continually deploy Bitbucket, HipChat and our other OnDemand offerings
Ideally, participants will run through some live Git exercises, some of which that will require internet access. Attendees should come with a laptop with a modern version of Git installed.
Participants will walk away with a deeper appreciation of Git's capabilities, the confidence to make the switch to Git, (if they haven't already), and the skills to architect a kick-ass Git workflow for their team.