Version Control - PowerPoint PPT Presentation

About This Presentation
Title:

Version Control

Description:

CVS (Concurrent Versions System) is the most popular version control system on Windows ... CVS on Windows 95/NT. The first is as a client, talking to a CVS ... – PowerPoint PPT presentation

Number of Views:198
Avg rating:3.0/5.0
Slides: 17
Provided by: vil120
Category:
Tags: control | cvs | version

less

Transcript and Presenter's Notes

Title: Version Control


1
Version Control
2
Why version control?
  • Scenario 1
  • Your program is working
  • You change just one thing
  • Your program breaks
  • You change it back
  • Your program is still broken--why?
  • Has this ever happened to you?

3
Why version control? (part 2)
  • Your program worked well enough yesterday
  • You made a lot of improvements last night...
  • ...but you haven't gotten them to work yet
  • You need to turn in your program now
  • Has this ever happened to you?

4
Version control for teams
  • Scenario
  • You change one part of a program--it works
  • Your co-worker changes another part--it works
  • You put them together--it doesnt work
  • Some change in one part must have broken
    something in the other part
  • What were all the changes?

5
Teams (part 2)
  • Scenario
  • You make a number of improvements to a class
  • Your co-worker makes a number of different
    improvements to the same class
  • How can you merge these changes?

6
diff tools
  • There are a number of tools that help you spot
    changes (differences) between two files
  • Tools include diff, rcsdiff, jDiff, etc.
  • Of course, they won't help unless you kept a copy
    of the older version
  • Differencing tools are useful for finding a small
    number of differences in a few files

7
jDiff
  • jDiff is a plugin for the jEdit editor
  • Advantages
  • Everything is color coded
  • Uses synchronized scrolling
  • It's inside an editor--you can make changes
    directly
  • Disadvantages
  • Not stand-alone, but must be used within jDiff
  • Just a diff tool, not a complete solution

8
jDiff
9
Version control systems
  • A version control system (often called a source
    code control system) does these things
  • Keeps multiple (older and newer) versions of
    everything (not just source code)
  • Requests comments regarding every change
  • Allows check in and check out of files so you
    know which files someone else is working on
  • Displays differences between versions

10
sccs
  • sccs is Source Code Control System (UNIX)
  • sccs keeps multiple versions of a complete
    directory
  • Storage requirements are small, because sccs
  • keeps the original documents
  • keeps the changes needed to go from one version
    to the next
  • generates any version when you ask for it

11
rcs
  • rcs is Revision Control System (also UNIX)
  • rcs is like sccs, and does the same things, but
  • sccs keeps the originals, and applies changes to
    get to newer versions
  • rcs keeps the current versions, and applies
    changes to get back to older versions
  • (Opinion) You usually want to work with the newer
    versions, so rcs is usually the better choice

12
rcs commands
  • Create a directory for your rcs files
  • co -l file -- check out a file and lock it
  • Locking means you can check the file back in
  • ci file -- check in a revision (put file under
    rcs control)
  • rcs -l file -- lock a file you already checked
    out
  • (Needed when you checked it out and forgot the -l
    )
  • rcsdiff files -- report differences between files
  • merge files -- merges two files into original
    file
  • Not magic--you have to check the results

13
Who cares about UNIX?
  • CVS (Concurrent Versions System) is the most
    popular version control system on Windows
  • CVS is built on top of rcs
  • CVS is built into JBuilder and Eclipse
  • There are two ways to run CVS on Windows 95/NT.
    The first is as a client, talking to a CVS server
    on a Unix box. This is the recommended setup and
    is commonly used. -- http//www.cvshome.org/d
    ev/codewindow.html

14
CVS commands
  • cvs checkout file
  • cvs commit file
  • cvs diff file
  • These are CVS commands under UNIXPopular GUIs on
    Windows
  • tkCVS
  • jCVS
  • WinCVS

15
CVS home page
  • http//www.cvshome.org

16
The End
Write a Comment
User Comments (0)
About PowerShow.com