Training Description:
Subversion is a free and open source software version
controlling system being used by individuals and large
software development companies alike. Subversion is the
successor of CVS and is not second to any other version
controlling systems. Being a matured product, Subversion
comes with a large set of features, client side support for
all the major operating systems and integrates with many
development environments.
This one day training on Subversion is for both the
administrators and the users. It covers everything from
setting up a repository, interacting with the repository and
administration functions making this a single training that
covers everything required to work with Subversion.
However, for special requirements, merge tracking, sparse
checkouts, repository sharding and partitioning, read-only
clustering for improved performance will optionally be
covered on a second day (if requested only).
Training Objectives:
At the end of the training, participants will be able to
-
Configure a Subversion server including access controlling.
-
Interact with a Subversion server in performing basic and
advanced operations.
-
Adhere to best repository interaction patterns.
-
Use a simple but effective release versioning mechanism.
-
Use a number of different Subversion clients on different
operating systems and with different development environments.
Target Groups:
-
All software professionals (include managers, coders,
testers, other supporting staff)
-
IT department staff maintaining repositories
-
Read "Do I
fit for that training?" if you are interested, but
need help to determine whether you should participate or
not.
Prerequisites:
-
No special prerequisites exist other than the participant
being a computer literate person.
Communication Language:
English
Duration:
1 day (8 hours) [or 2 days (16 hours) - see description above]
Facilitator:
Kamal Wickramanayake (Profile)
Notes:
- This training is done with hands on lab exercises.
Training Content:
- Introduction
- What is software version controlling?
- Versioning models (optimistic, pessimistic)
- Repository and local copy
- General Usage
- Initial import
- Basic work cycle
- Conflict resolution
- Browsing the repository
- Branching And Merging
- Common use cases
- Software release versioning
- Tags
- Advanced Topics
- Properties
- Ignoring files from being version controlled
- Locking
- Keyword substitution
- Different Clients
- Command line interface
- Subclipse
- TortoiseSVN
- RapidSVN
- Ant task
- Maven2 goal
- Repository Administration
- Selecting a suitable repository structure
- Setting up a repository
- Different repository access mechanisms
- Access controlling in an Apache/Subversion system
- Repository maintenance