subversion voor projectleiders
DESCRIPTION
Subversion voor Projectleiders. Rob Brands Aino Andriessen. Source control systems. MS Visual SourceSafe Subversion (svn) CVS SCCS PVCS ClearCase Bitkeeper Perforce Oracle version control RCS netwerk schijf. CVS & Subversion. - PowerPoint PPT PresentationTRANSCRIPT
1May 25, 2005
Subversion voor Projectleiders
Rob Brands
Aino Andriessen
2May 25, 2005
Source control systems
MS Visual SourceSafe Subversion (svn) CVS SCCS PVCS ClearCase Bitkeeper Perforce Oracle version control RCS netwerk schijf ...
3May 25, 2005
CVS & Subversion
CVS wordt traditioneel veel ingezet in de open source community en in Java omgevingen.
The goal of the Subversion project is to build a version control system that is a compelling replacement for CVS in the open source community.
Subversion wordt in grote communities, als Apache, ingezet.
4May 25, 2005
Approaches
lock-modify-unlock vss
copy-modify-merge svn, cvs
5May 25, 2005
Hele korte Vergelijking
SVN MS VS
Strategy copy-modify-merge lock-modify-unlock
Access Internet, others lokaal netwerk
Clients Many VS client
OS MS, Linux, MacOS, java MS
Command line x beperkt
Atomic commits x -
Pricing gratis niet gratis
Move x ?
Renaming x ?
Directory versioning
x ?
6May 25, 2005
Voordelen
Internet access vergelijkbaar met cvs clients copy-modify-merge command line
7May 25, 2005
Aandachtpunten
best practices myproject/branches/ myproject/tags/ myproject/trunk/
copy-modify-merge bijv. voor projectfiles
werkwijze tov vss global revision number
“revision 5 of foo.c”, -> “foo.c as it appears in revision 5.”
migratie
8May 25, 2005
Clients
Browser command line Windows Explorer (Tortoise) smartSVN IDE's Jira plugin ant / maven ...
9May 25, 2005
SVN en Jira
Jira kan worden/wordt gekoppeld aan SVN Jira retrieves the svn logfiles Koppeling op basis van het Jira incident nr. Aparte tab bij een incident
! Neem dus het Jira incident nr op als commentaar bij een commit.
10May 25, 2005
Working copy
To get a working copy, you must check out some subtree of the repository. No concept of project or module
.svn administrative directories off-line actions Locking is an option
11May 25, 2005
Terminology
SourceSafe use the word "checkout" as a command which specifically communicates the intent to edit a file.
For CVS / SVN, the "checkout" command is used to retrieve files from the repository regardless of whether the user intends to edit the files or not.
12May 25, 2005
Terminology 2
Repository Check-out Update Commit (check-in) Branch Tag (label) Switch Merge Revision Import Lock working copy ...
13May 25, 2005
Revisions
Each time the repository accepts a commit, this creates a new state of the filesystem tree, called a revision. Each revision is assigned a unique natural number. a revision is a “snapshot” of the repository
at a particular moment in time global revision number
• “revision 5 of foo.c”, -> “foo.c as it appears in revision 5.”
It's important to note that working copies do not always correspond to any single revision in the repository; they may contain files from several different revisions.• commit does not pull so you must perform
update shortcuts: HEAD, BASE, PREV, ...
14May 25, 2005
Merge
Merging is het fundament van svn Op text-files Meestal geen conflicten Built-in conflict resolution Dus ook goede ondersteuning voor het
mergen van een branch met de main 'line' Aangeven welke revisies er gemerged
moeten worden
15May 25, 2005
Tagging, Branching en Merging
Tag = label (in vss) Branch is een aparte kopie Onderliggend mechanisme van taggen en
branchen is hetzelfde Smart copy
16May 25, 2005
SVN Architecture
17May 25, 2005
Demo
Tortoise Log en revision graph Merging
18May 25, 2005
Resources
Wikipedia http://en.wikipedia.org/wiki/Revision_control http://en.wikipedia.org/wiki/List_of_revision_control_software
Tutorial http://software.ericsink.com/scm/source_control.html
Comparison http://better-scm.berlios.de/comparison/comparison.html
SVN Crashcourse http://www.developer.com/java/other/article.php/3499816
19May 25, 2005
Resources
CVS http://www.nongnu.org/cvs/
Subversion http://subversion.tigris.org/ http://svnbook.red-bean.com/ http://tortoisesvn.tigris.org/
Visual Sourcesafe http://msdn.microsoft.com/vstudio/previous/ssafe/
Clearcase http://www-306.ibm.com/software/awdtools/clearcase/