subversion overview

14
Subversion An Overview

Upload: polarion

Post on 17-May-2015

6.415 views

Category:

Business


0 download

TRANSCRIPT

Page 1: Subversion Overview

Subversion

An Overview

Page 2: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 2

Subversion – Leading the SCM MarketAccording to Forrester Q2/2007

• June 2000 - Coding begins.

• August 2001 - Subversion becomes self-hosting.

• 2002 – 1st release

• 2004 – Feb. Release 1.0.0

• 2006 – Sept. Release 1.4.0

• Latest Release: 1.4.6

Page 3: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 3

What can Subversion Do For You

Backing up data

Documentation

Configuration

Management

Distributed

Development

CR 12

Page 4: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 4

Subversion – Architecture Overview

Berkley DB

FSFS

SubversionRepository

Client

Interface

Repository

Interface

GUI client apps

Commandline

client apps

ClientLibrary

Working Copy Management

Library

Repository

access

DAV

SVN

Local

Apache

mod_dav

mod_dav_svn

svnserve

Internet(Any TCP/IP Network)

Single Sign On LDAP

High Secure SSL

Office Integration WebDAV

UNIX, LINUXWINDOWS

Offline Support

Page 5: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 5

Subversion – Easy Windows Integration

• Tortoise Smoothly integrated in windows explorer

Page 6: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 6

The Working Cycle

svn checkoutsvn update

get content

svn addsvn movesvn delete

Make changes

svn status -u

See what was changed in the repository in the meantime

svn update

Update your local copy

svn diffsvn resolved

Merge your changesResolve conflicts

svn commit

Submit your changes

10

5

10

0

10

6

Subversion

Repository

Page 7: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 7

Subversion – ArchitectureThe revision numbers

0 1 2 3

Each revision isa complete configuration

Not just file management but

management of changes

Page 8: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 8

Subversion - Concepts

• Atomic Commits No part of a commit takes effect

until the entire commit has succeeded.

Revision numbers are per-commit, not per-file; log messages are attached to the revision, not stored redundantly as in CVS.

No inconsistence in repository because large commits happened at the same time

Files within a commit are grouped automatically so it is effident what files have been part of a change set without extra labels

Page 9: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 9

Subversion – Branches, Tags

• Branching and tagging are cheap (constant time) operations Branches and tags are both implemented in terms of an underlying

"copy" operation. A copy takes up a small, constant amount of space.

BRANCH 1

Extremely fastbranching and

Tagging

„before using Subversion we waited in some projects 15 min. until a branch was created.“

Page 10: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 10

branches

trunk

Calc

Root

Paint

my-calc branch

branches

trunk

Easy to Understand

Branching is Cheap

Can be deletedand reanimated

BranchesCreating Branches

Page 11: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 11

Subversion – Staging

• Staging can be managed via folder structures

tags

Project 1

Root

trunk

Dev

QA

Rel

Development stage

Releases for QA

Final Releases

Page 12: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 12

Suberversion – Binary Files

• Efficient handling of binary files Subversion is equally efficient on

binary as on text files, because it uses a binary diffing algorithm to transmit and store successive revisions.

After Migration to Subversion a repository is usually between 30% smaller

Update and commit operations on binaries are much faster with subversion.

Page 13: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 13

Subversion –Scalability

0

10

20

30

40

50

60

70

80

90

100

3.2

9.6 16

22.4

28.8

35.2

41.6 48

54.4

60.8

67.2

73.6 80

86.4

92.8

99.2

105.

611

211

8.4

124.

813

1.2

137.

614

415

0.4

156.

8

Repo Size (GB)

Tim

e (

s) Log (50 revs)

Checkout800MB

Checkout_rev1_800MB

Page 14: Subversion Overview

© Polarion Software GmbH 2006 SVN Workshop 14

Subversion – Migration

• Migrations are possible from CVS Clear Case PVCS Visual Source Safe MKS StarTeam