Version Control - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

Version Control

Description:

The management of multiple versions of the same unit of information ... check file in, it will not alway checks in successfully due to the change ... – PowerPoint PPT presentation

Number of Views:974
Avg rating:3.0/5.0
Slides: 15
Provided by: sun679
Category:
Tags: alway | control | version

less

Transcript and Presenter's Notes

Title: Version Control


1
Version Control
June 06, 2007
Team NS2 Nghia Nguyen Shane Bergman Hongsun Jang
(Sunny)
2
OVERVIEW
3
Definition
  • The management of multiple versions of the same
    unit of information
  • Most commonly used in engineering and software
    development
  • to manage ongoing development of digital
    documents like application
  • source code, art resources such as blueprints
    or electronic models and
  • other critical information that may be worked
    on by a team of people.
  • In most software development projects, multiple
    developers work on the
  • program at the same time.
  • If two developers try to change the same file at
    the same time, without
  • some method of managing access the developers
    may easily end up
  • overwriting each other's work.

4
How to Use
  • Changes to these documents are identified by
    incrementing an
  • associated number or letter code, termed the
    "revision number",
  • "revision level", or simply "revision" and
    associated historically with
  • the person making the change.
  • Most version control systems, such as CVS, allow
    multiple developers
  • to be editing the same file at the same time.
  • The first developer to "check in" changes to the
    central repository
  • always succeeds. The system provides
    facilities to merge changes into
  • the central repository, so the improvements
    from the first developer
  • are preserved when the other programmers
    check in.

5
How to Use
File Locking
The simplest method is to lock files so that only
one developer at a time has write access to the
central "repository" copies of those files. Once
one developer "checks out" a file, others can
read that file, but no one else is allowed to
change that file until that developer "checks in"
the updated version (or cancels the checkout).
it can provide some protection against difficult
merge conflicts when a user is making radical
changes to many sections of a large file
locked for too long, other developers can be
tempted to simply bypass the revision control
software and change the files locally anyway.
That can lead to more serious problems.
Version Merging
Most version control systems, allow multiple
developers to be editing the same file at the
same time. The first developer to "check in"
changes to the central repository always
succeeds. The system provides facilities to
merge changes into the central repository, so the
improvements from the first developer are
preserved when the other programmers check in.
unlike file locking everyone is able to check the
same file out
everytime a developer check file in, it will not
alway checks in successfully due to the change
made in earlier check in by other developer.
6
How to Use
Distributed Version Control
Distributed systems take a peer-to-peer approach
to vision control. Rather than a single, central
repository on which clients synchronize, each
peer's working copy of the codebase is a
repository.
usually by not needing a server to store files.
Not making work available and locatable by other
developers. Not making it easy to understand the
changes made.
7
CVS
  • The Concurrent Versions System (CVS), also known
    as the Concurrent
  • Versioning System.
  • Open-source version control system invented and
    developed
  • by Dick Grune in the 1980s.
  • CVS keeps track of all work and all changes in a
    set of files, typically
  • the implementation of a software project, and
    allows several
  • (potentially widely-separated) developers to
    collaborate.
  • CVS has become popular in the open source
    software world
  • and is released under the GNU General Public
    License.
  • Developed from an earlier versioning system
    called Revision Control System (RCS)
  • which manages individual files but not whole
    projects.
  • Dick Grune created CVS to be able to cooperate
    with his students in 19841985.
  • The code was publicly released on June 23, 1986
  • Evolved into the current version of CVS started
    in 1989
  • CVSNT The development of the Microsoft Windows
    version of CVS

8
CVS
  • Several developers may work on the same project
    concurrently -gt
  • Each one editing files within their own working
    copy of the project -gt
  • and sending (or checking in) their modifications
    to the server
  • To avoid the possibility of people stepping on
    each other's toes
  • The server will only accept changes made to the
    most recent version of a file

9
CVS
  • Compare algorithms
  • Request a complete history of changes
  • Check out a historical snapshot of the project
    as of a given date or as of
  • a revision number.
  • Use the "update" command to bring their local
    copies up-to-date with
  • the newest version on the server. This
    eliminates the need for repeated
  • downloading of the whole project.
  • Moving or renaming of files and directories are
    not versioned.
  • No versioning of symbolic links.
  • Limited support for Unicode text files and
    non-ASCII filenames.

10
Source Safe
  • Easy-to-use solution for developers who want a
    simple way to manage changes
  • to their source code
  • Can be seamlessly migrated to Team Foundation
    Server, the central component of
  • the new Visual Studio Team System
  • Combines the security of SQL Server 2005, Active
    Directory, and IIS to form a
  • complete collaboration platform.
  • Provide an application lifecycle management
    solution for the broad spectrum of
  • Microsoft customers.
  • Unicode and XML Support
  • Remote access over HTTP
  • Backwards compatibility
  • Increased capacity to 4GB
  • Migration path to Team Foundation Server

11
Source Safe
  • Single-user system can be set up
  • without installing services
  • When backing up you can get away
  • with simply compressing a single
  • directory tree
  • For multi-user, it lacks features,
  • such as support for atomic
  • commits of multiple files
  • Easy to use
  • Integration with other Microsoft
  • development solution
  • Suitable for small or medium
  • scale project
  • Support from MSDN
  • The system is heavy and slow
  • If a client machine crashes in the
  • middle of updating such file,
  • the file could become corrupted
  • Only support Windows system

12
FtpVC
  • ftpVC is a serverless version control system for
  • Windows 98/Me/NT/2000/XP/2003, which allows
    joint software
  • development using Internet FTP connections
  • Price 50 for one license (very inexpensive
    compared to some others)

no VC server needed
can get, check out, check in, undo check out, and
label files
Maintains file revision history
13
FtpVC
Allows to set watch for a specific file
Shows differences between different file versions
Supports SMTP servers with authentication
Supports multiple version control projects
Provides recursive file management
Allows compression and encryption of remote files
Includes standard FTP client features
14
Conclusion
  • Version control is the management of multiple
    versions of the same
  • unit of information
  • Without version control, the developers may
    easily end up overwriting
  • each other's work.
  • There are 3 storage models to handle versions,
    which are file locking,
  • version merging, and Distributed Version
    Control
  • There are some products for supporting version
    control such as CVS,
  • SourceSafe and FTPVC.
  • CVS is unix-based server-client architecture
    system, whereas SourceSafe
  • is easy to use system supporting only
    windows. FTPVC doesnt use a
  • server because it uses ftp internet protocol.
Write a Comment
User Comments (0)
About PowerShow.com