Published on September 5, 2007
Basic SCM with Subversion & Trac Vishnu Gopal www.vish.in
Contents • What, Why and How? • Subversion Commands • Demo: Command-line tools • GUI tools • Project Layout • Trac: overview
What? • Subversion maintains snapshots of the code repository. • Allows many people to concurrently work on a codebase. • Subversion is source control with a central repository. • Usually integrates with a frontend: Trac
Why? • Continuous incremental backup. • Ability to recall older code. • Distributed development. • Various versions of a single project. • Tracking bugs, timeline, goals and releases.
How? • Developers checkout code from the repository to a local working-copy. • After making edits, they commit changes. • At any point, they can revert to an older version of the codebase. • They update their local working copy frequently to keep up with changes.
Work with Subversion
But how does Subversion work? • A system to track changes in ﬁles. • The code is initially imported into the repository. • Then a special “subversion-aware” directory is checked-out. • Developers commit and update. • Subversion tracks the changesets and the commit-log.
Common Subversion Commands • checkout: Obtain a new working copy. • import: Import code into repository initially. • commit: Update repository with changes. • update: Update working-copy with changes. • Other commands: revert, move, copy, merge.
GUI Tools • TortoiseSVN in Windows • Right-click a directory: get a context-menu with everything in there. • Useful Integration with diff and patch. • Reasonably fast.
Project Layout • trunk • All constant development happens here. • branches • Special purpose development here. • tags • Releases are “tagged” for archiving.
Major features of Trac • Frontend to a Subversion repository. • Shows the changesets and timeline. • Has a bug tracker which integrates with the Subversion commit-log. • Simple project management.
Some good Subversion practices • Follow the branches, tags, trunk structure. • All code should be in the repository! • Update code at the start of every day. • Only commit coherent changes. • The central repository should always be consistent. • Branch as less as possible.
Finis The end. Questions?
VisualSVN Server makes the Subversion server easy and convenient to install and administer on Windows. Learn more... download licensing © 2005 ...
... Subversion Source ... Subversion from a source code release: Download the latest source code distribution or checkout the source code from version control.
SVN Basic Concepts - Learn Apache Subversion ... SVN - Basic Concepts ... we will concentrate only on the Centralized Version Control System and especially ...
... a free "packaging up" of the open-source Subversion version control ... basic way of adding some sort of version control to your OBIEE system ...
Getting Subversion Source Download; ... Apache Subversion Features. ... CVS is a relatively basic version control system.
Subversion is a free/open source version control system (VCS). That is, ... but also the basic design of the Subversion data store.
Version Control Basics ... (such as program source code). ... You are reading Version Control with Subversion ...
A talk I gave at Torque on 6th Sep, 2007 ... 1.Basic SCM with Subversion & TracVishnu Gopal www.vish.in . 2. Contents • What, Why and How?
SVN Tutorial for Beginners - Learn ... is a software versioning and revision control system distributed under an open source license. Subversion ...