Date post: | 23-Jan-2015 |
Category: |
Technology |
Upload: | colleenfry |
View: | 777 times |
Download: | 0 times |
STEFAN SAASEN • STASH DEVELOPMENT MANAGER • ATLASS IAN • @stefansaasen
True GitTHE GREAT MIGRATION
TODO Show of hands
Picture with hands/lighter/concert
Add attribution slide
Source Control Management
2011 2013 (projected) 2013 2015 (projected)
68
4941
20
55
706878
SVN Git
Why am I passionate about this?
Why Git?
Branching & Mergingfast, cheap and simple
first class concept
Branching & Mergingfast, cheap and simple
first class concept
Foundation for new workflows
Speed
git bisect
git log
git diffgit status
Bad
Good (v2.7) TestRegression!
Fast graph traversalFast checkout
git bisect
Enables new features
Improves basic featuresSpeed
git bisect
git log
git diffgit status
Local commitsRewrite History
Edit & Publish
FlexibilityLocal commitsRewrite History
Edit & Publish
Git does what you are doing today, only better
LABEL T ITLE
GIT
SVN
New ways of collaborating
Existing workflows
New branchworkflows
LABEL T ITLE
GIT
SVN
New ways of collaborating
Existing workflows
New branchworkflows
Release branching master
2.8
2.7
Bugfix
Git Workflows a-la-carte
N i c o l a P a o l u c c i
Rapid Agile Delivery
M a t t h e w W a t s o nT h u r s d a y - 1 1 : 1 5 a m T h u r s d a y - 1 : 1 5 p m
So you’ve decided to migrate!
The process
1
2
3
Inception
Adoption
Conversion
• Is git suitable?
• Test the conversion
• Identify the repositories that need to be converted
• Identify the tools that need to be updated. CI, issue tracking, IDE, scripts and build tools, deployment tools
Inception 1
1
1
2
3
The process
Inception
Adoption
Conversion
• You need to answer: “What’s in it for me”
• Make sure tooling is ready and can be used by everyone
• Identify the git champions - they will be thrilled to help
• Don’t expect to win everyone over immediately
Adoption 2
2
Just text by itself, for impact.
2
1
2
3
The process
Inception
Adoption
Conversion
We’ve got you covered!
&Scripts Tutorial & Documentation
bit.ly/go-dvcs
git-svn
3
jdeveloper = John Developer <[email protected]>
Map Authors
Identify SVN repository layout
/tags/trunk/branches
3Conversion - Preparation
git svn clone \ --authors-file=/authors.txt \ --trunk=/trunk \ --tags=/tags \ --branches=/branches
3Conversion - Initial Clone
?
git svn fetch
3Conversion - Sync
Infrastructure first 3
CI Issues IDE
read-only
Sync every minute
• Cleanup branches
• Remove unused files
• Create git tags
• Remove commit metadata
3Conversion - Cleanup
Then your team 3
CI Issues IDE
read-only read-only
Other Tools?SubGit
1
2
3
The process
Inception
Adoption
Conversion
Or are you?
Just text by itself, for impact.
Collaboration model?Branching model?
Centralized=+
Enterprise
Builds
Metrics
Issues
Deployments
Workflows will changefor the better
but they don’t have to change on day one!
This happened in both Confluence and JIRA...
master
confluence-project-4.0
CONF-1234
git cherry-pick bae6251
From SVN like
master
confluence-project-4.1
CONF-2345
git merge confluence-project-4.1git merge confluence-project-4.1
To git branch based workflow
Contributions from outside of the team
Sub-Teams
Forks can be useful!
Conclusion
0
20
40
60
80
2011 2013 (projected) 2013 2015 (projected)
68
4941
20
55
706878
SVN Git
Subversion (58%) is being
threatened by Git (47%) for de facto leadership of the Version Control space. ZEROTURNAROUND DEVELOPER PRODUCTIVITY REPORT 2013
”
“
is here to stay
expands
migration is a solved problem
Thank you!
STEFAN SAASEN • STASH DEVELOPMENT MANAGER • ATLASS IAN • @stefansaasen