Made in USA Software Development Services Ayoka, L.L.C. 202 E. Border Street, Ste 334 Arlington, TX By Steven Ledford Subversion Exposed
Made in USA Software Development Services Fundamental Concept Ayoka, L.L.C. 202 E. Border Street, Ste 334 Arlington, TX Shorten your time to market through application outsourcing with… How do you allow multiple people modify files?
Made in USA Software Development Services Methodologies Ayoka, L.L.C. 202 E. Border Street, Ste 334 Arlington, TX Shorten your time to market through application outsourcing with… Lock – Modify – Unlock
Made in USA Software Development Services 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
Made in USA Software Development Services Methodologies Copy – Modify – Merge
Made in USA Software Development Services Methodologies Copy – Modify – Merge
Made in USA Software Development Services 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 Methodologies
Made in USA Software Development Services The Repository General Structure trunk tags branches
Made in USA Software Development Services The Repository Trying Out the Trunk Edge release Should compile Never work directly on the trunk
Made in USA Software Development Services The Repository Touching the Tags Releases, Milestones, or Versions Create once, modify NEVER
Made in USA Software Development Services 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
Made in USA Software Development Services Example Architecture
Made in USA Software Development Services Example Project Snap Shot
Made in USA Software Development Services Tools Windows: Tortoise SVN Visual Studio: Ankh SVN Eclipse: Subclipse Subversive Linux: SVN Client (good ol’ command line)