Version Control - PowerPoint PPT Presentation

1 / 15
About This Presentation
Title:

Version Control

Description:

Version control involves the management of multiple revisions of the same entity. ... Berkeley DB (optional, but strongly recommended) Conclusion ... – PowerPoint PPT presentation

Number of Views:101
Avg rating:3.0/5.0
Slides: 16
Provided by: conest
Category:

less

Transcript and Presenter's Notes

Title: Version Control


1
Version Control
  • By Peter, Derek, Carlos

2
What is Version Control?
  • AKA Revision Control
  • Version control involves the management of
    multiple revisions of the same entity.
  • In other words, it allow multiple developers and
    teams work on multiple instances of a project by
    tracking all the changes and revisions made to
    that specific resource.

3
How is Version Control used?
  • It is most commonly used in software development
    to aid in the management of the evolution of
    various entities such as application source code,
    GUI design, various diagrams and charts other
    critical information that may be worked on by a
    team of people.

4
Whats out there?
  • 2 Examples of Open Source Products
  • CVS
  • Subversion

5
CVS Overview
  • CVS is a version control system, and by using it,
    you can record the history of sources files, and
    documents.
  • CVS is a production quality system in wide use
    around the world, including many free software
    projects.

6
CVS Features
  • CVS stores individual file history
  • It can run scripts which you can supply to log
    CVS operations or enforce site-specific polices.
  • Client/server CVS enables developers scattered by
    geography or slow modems to function as a single
    team.
  • The version history is stored on a single central
    server and the client machines have a copy of all
    the files that the developers are working on.
  • The network between the client and the server
    must be up to perform CVS operations (such as
    check-ins or updates) but need not be up to edit
    or manipulate the current versions of the files.

7
CVS Features continued
  • Clients can perform all the same operations which
    are available locally.
  • In cases where several developers or teams want
    to each maintain their own version of the files,
    because of geography and/or policy, CVS vendor
    branches can import a version from another team,
    and then CVS can merge the changes from the
    vendor branch with the latest files if that is
    what is desired.
  • Unreserved checkouts, allowing more than one
    developer to work on the same files at the same
    time.

8
CVS Features continued
  • CVS provides a flexible modules database that
    provides a symbolic mapping of names to
    components of a larger software distribution. It
    applies names to collections of directories and
    files. A single command can manipulate the entire
    collection.
  • CVS servers run on most UNIX variants, and
    clients for Windows NT/95, OS/2 and VMS are also
    available.
  • CVS will also operate in what is sometimes called
    server mode against local repositories on Windows
    95/NT.

9
Subversion
  • Subversion was created as a replacement for CVS.
    Its advantages include
  • Directory versioning
  • Directory Tress are versioned through Subversion
    virtual file-system.
  • True version history
  • You can add, delete, copy, and rename both files
    and directories.
  • Newly added files begin with a fresh, clean
    history
  • Atomic commits
  • Collection of modifications either goes into the
    repository completely, or not at all.
  • Allows developers to construct and commit changes
    as logical chunks
  • Versioned metadata
  • Each file and directory has a set of
    propertieskeys and their valuesassociated with
    it.
  • You can create and store any arbitrary key/value
    pairs you wish.

10
Subversion continued
  • Choice of network layers
  • Subversion can plug into the Apache HTTP Server
    as an extension module.
  • Consistent data handling
  • Both text (human-readable) and binary
    (human-unreadable) files are stored equally
    compressed in the repository, and differences are
    transmitted in both directions across the
    network.
  • Efficient branching and tagging
  • Subversion creates branches and tags by simply
    copying the project, using a mechanism similar to
    a hard-link.
  • Hackability
  • Subversion has no historical baggage it is
    implemented as a collection of shared C libraries
    with well-defined APIs.

11
CVS Intallation
  • Installation for Windows
  • Installer can be found on http//www.wincvs.org
  • WinCVS also requires download CVSNT which comes
    included in the install
  • package,
  • however it can be downloaded separately
  • There are 3 different package you can download
  • Development
  • The most up to date releases
  • Least Tested
  • Not recommended for production environment
  • Recommended
  • Development builds become Recommended when no
    serious issues get reported with them
  • Most Stable
  • Recommended for novice users and in critical
    environments
  • Milestone
  • feature-complete and sufficiently stable
  • No further development will be done unless
    serious issues arise

12
CVS Installation continued
  • As the name suggests, recommended builds are
    ideal for production environments
  • Installation on Mac and Linux/Unix
  • Mac Version can also be found on
  • http//www.wincvs.org
  • Linux version can be found on
  • http//ftp.gnu.org/non-gnu/cvs/
  • Instructions for installing CVS on Linux can be
    found here
  • http//www.devguy.com/fp/cfgmgmt/cvs/cvs_admin_lin
    ux.htm

13
Subversion Installation
  • Subversion is built on a portability layer called
    APR (the Apache Portable Runtime library)
  • This means Subversion should work on any
    operating system that the Apache httpd server
    runs on Windows, Linux, all variations of BSD,
    Mac OS X, Netware, and others.
  • The easiest way to get Subversion is to download
    a binary package built for your operating system.
  • Subversion's website (http//subversion.tigris.org
    ) Alternately, you can build Subversion directly
    from source code.
  • Requirements
  • APR (the Apache Portable Runtime library)
  • Apache HTTP Server (optional)
  • Berkeley DB (optional, but strongly recommended)

14
Conclusion
  • Version Control is an essential part of a team
    development environment, allowing the whole team
    to work on the project at the same time.
  • CVS vs. Subversion
  • It is a matter of personal preference however CVS
    is more well-known and therefore, possibly has a
    better support network.
  • http//www.nongnu.org/cvs/
  • http//www.wincvs.com
  • http//ximbiot.com/cvs/cvshome/
  • http//ftp.gnu.org/non-gnu/cvs/
  • http//svnbook.red-bean.com/
  • http//subversion.tigris.org/

15
All Information Obtained From
  • http//www.nongnu.org/cvs/
  • http//www.wincvs.com
  • http//ximbiot.com/cvs/cvshome/
  • http//ftp.gnu.org/non-gnu/cvs/
  • http//svnbook.red-bean.com/
  • http//subversion.tigris.org/
Write a Comment
User Comments (0)
About PowerShow.com