Source Code Management
Campus LISA
July 9, 2014Matt Critchlow
Manager of Development and Web Services
Questions
• Who is using a version control system in their current position?
• Who is using Github, either personally or professionally?
• Who develops code entirely on their own?
Background
• UC San Diego Library Development Team
• 6 Developers
• Open-Source repositories: 3
• Internal repositories: 46
Version Control
Source: http://git-scm.com, http://github.com, http://atlassian.com/software/stash
Github
• Social Coding – 6 mil+ people
• Collaboration with community projects– https://github.com/projecthydra– https://github.com/projectblacklight/– https://github.com/fcrepo4
• Best Practices are inherited
Stash
• Internal Projects
• Git under the hood
• User interface similar to Github
• JIRA Integration
Git Flow
Source: http://nvie.com/posts/a-successful-git-branching-model/
Git Flow: Primary Branches
Source: http://nvie.com/posts/a-successful-git-branching-model/
Git Flow Git Extensions
Source: https://github.com/nvie/gitflow
Git Flow: New Feature
Source: http://nvie.com/posts/a-successful-git-branching-model/
Git Flow: Release
Git Flow: OH CRAP!
Source: http://nvie.com/posts/a-successful-git-branching-model/
Other Workflows
• Git Tags and Branches
• Spencer and Tom’s workflows
• Subversion has equivalents
• Goal: Consistent workflow that works for your team
References
Library on Github: https://github.com/ucsdlib/
Git Flow: https://github.com/nvie/gitflow
Atlassian Stash: https://www.atlassian.com/software/stash
Contact: @mattcritchlow, [email protected]