{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

intro-to-cvs - Introduction to CVS Portions adapted from A...

Info iconThis preview shows pages 1–11. Sign up to view the full content.

View Full Document Right Arrow Icon
Introduction to CVS Portions adapted from A Visual Guide to Version Control
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Outline Introduction to Source Code Management & CVS CVS Terminology & Setup Basic commands Checkout, Add, Commit, Diff, Update, Remove, Log, Revert Other CVS items of interest Handling conflicts Ignoring certain resources Creating your own repositories Adding modules to a repository Popular clients TortoiseCVS Eclipse UNIX shell over SSH
Background image of page 2
What is Source Code Management A source code management (SCM) system handles the management of revisions of resources Typically, though not always source code So, why should you use one?
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
The “I’ll Roll My Own” Approach You’ve probably seen (or perhaps created) messes like this… So, what exactly is in Foo.java.bak.bak? [[email protected] grocery-list]$ ls Foo* Foo.java Foo.java.DAN Foo.java.bak.bak Foo.java.1030am Foo.java.Sep-2-1030am Foo.java.old Foo.java.10am Foo.java.WORKING_AS_OF_11am Foo.java.BROKEN Foo.java.bak [[email protected] grocery-list]$
Background image of page 4
The “Shared Drive” Approach Can’t we just write to a directory on the shared drive? Where’s the eggs developer A added? Problem gets worse as number of developers grows Developer A Developer B Milk Milk Juice Milk Eggs Milk Milk Juice Milk Milk Eggs open open save save
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
Use in Industry Many development shops make use of some type of SCM system where there is a need for more discipline and management of source code Can you check to see if class Foo exhibits a particular bug in that release A.B.C from last spring, we made for customer X, for Linux, specifically the i686 build, and if so, what other releases are also affected? Though there are many different SCM systems out there, the concepts remain pretty similar CVS, Subversion, Git, ClearCase, SourceSafe, etc…
Background image of page 6
What is CVS? Concurrent Versioning System (CVS) is one of the earlier SCM systems which gained wide adoption Open source Easy to install and use Simple command line client Wide integration in a lot of development tools For good introduction on version control and CVS see the following book… Pragmatic Version Control using CVS
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
CVS Terminology Repository – the place where resources are stored Server – the computer hosting the repository Client – the computer connecting to the repository Working Set/Copy – your local copy of resources housed in the repository
Background image of page 8
CVS Terminology Checkout – pull down resources from the repository and create a working copy Checkin/Commit – place resources from your working copy into the repository Add – place a resource under version control Remove – delete a resource from version control Update – pull down changes from the repository into your working copy Revert – overwrite resources in your working copy with what is in the repository
Background image of page 9

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
CVS Setup The following setup/examples assume that you are using a standard CVS command line client
Background image of page 10
Image of page 11
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}