140 likes | 149 Views
Learn methodologies like Lock-Modify-Unlock and Copy-Modify-Merge in Subversion to streamline development processes. Discover the benefits of trunk, tags, and branches for effective version control.
E N D
Subversion Exposed By Steven Ledford Ayoka, L.L.C. 202 E. Border Street, Ste 334 Arlington, TX 76010 817.210.4042 www.ayokasystems.com
Fundamental Concept How do you allow multiple people modify files? Shorten your time to market through application outsourcing with… Ayoka, L.L.C. 202 E. Border Street, Ste 334 Arlington, TX 76010 817.210.4042
Methodologies • Lock – Modify – Unlock Shorten your time to market through application outsourcing with… Ayoka, L.L.C. 202 E. Border Street, Ste 334 Arlington, TX 76010 817.210.4042
Methodologies • Lock – Modify – Unlock • Default Microsoft Visual SourceSafe Mechanism • Drawbacks • Inhibits parallel development on same/related files • False sense of security • Harry modifies file A while Sally modifies file B, where file A depends on file B.
Methodologies Copy – Modify – Merge
Methodologies Copy – Modify – Merge
Methodologies • Copy – Modify – Merge • Default Subversion Mechanism • Drawbacks • Can’t really use with binary files • Frustrating if you are not familiar with the concepts… ask David
The Repository General Structure • trunk • tags • branches
The Repository Trying Out the Trunk • Edge release • Should compile • Never work directly on the trunk
The Repository Touching the Tags • Releases, Milestones, or Versions • Create once, modify NEVER
The Repository Building the Branches • Development should be performed on branches • Each branch should be a disjoint component of your architecture • Works best with loosely coupled, highly cohesive OO design • Forces code reviews, and integration testing
Tools • Windows: • Tortoise SVN • Visual Studio: • Ankh SVN • Eclipse: • Subclipse • Subversive • Linux: • SVN Client (good ol’ command line)