Version Control Reducing risk with version control Jon Austin [email protected].
-
Upload
mervin-flowers -
Category
Documents
-
view
213 -
download
0
Transcript of Version Control Reducing risk with version control Jon Austin [email protected].
Why Version Control?
Reduce Risk Facilitate Group Projects Allows Experimentation Personal Time Machine
Risk Reduction
Distributed Code Base Central Repository Feature Retrieval
Do not forget to perform scheduled backups of your repository!
Group Projects
Every gets a “current” copy of the full source Can assist in code review Don't Always have to wait on others
Merging - Not as bad as it sounds. Conflicts - Can be as bad as it sounds. Blame – As fun as it sounds!
Commit Often... But... NEVER commit broken code to the trunk.
Allows Experimentation
Peace of mind I know my code is safe, what if I change
x?
Branching Try out new features without polluting
trunk Play in a sandbox
Personal Time Machine
Remember when...? Whoops, I deleted X! Who changed that? Ask the log! Why did I change that? Ask the log!
VCS Choices
SubVersion Stable and widely used Reasonably straightforward Cross Platform
Git Local change tracking
Many more
Usage
Create your Repository Place your project in it Add your project (Registers it with SVN) Ignore (bin folder, class files, private settings) Commit (Writes your changes to SVN) Check for Modifications (See what changed) Update (Pull the latest changes)
Terminology
Working Copy Trunk Tag Branch & Switch Revert Patch Diff/Compare
Have a Process
Make your changes Update your working copy Resolve any conflicts Recompile and re-test! Commit your changes
Free Hosting Resources
Rioux SVN - https://riouxsvn.com Free Private
Assembla - https://www.assembla.com Free Private
Version Shelf - https://www.versionshelf.com Free Student/Teacher accounts