Download presentation
Presentation is loading. Please wait.
1
Using Source Code Control Effectively
Gang Cheng
2
Why we need source code control?
Keep track of code changes Prevent code loss Retrieve older versions of software that customers are currently using to examine problems they are having
3
Three Levels Level 1: Opening Your Eyes Level 2: The SCC Journeyman
Level 3: Experts Only
4
Level 1 Opening Your Eyes Create: creates a new area in the repository
Add: adds a file to the repository Get: gets the current version of a file from the repository Checkout: works on a particular file actively Undo Checkout: throws away any changes and unlocks the file Checkin: puts the current version of the file back to the repository
5
Level 2 The SCC Journeyman
Label: assigns a name to a specific version of a file Share: allows a file to appear in more than one project Branch: lets development diverge Merge: takes changes from one branch and applies them to another branch
6
Level 3 Experts Only Cloak: hides a project in the repository
Delete: removes a file from the repository Move: relocates a file or subproject to a new parent project Pin: freezes a shared file at a particular version Rename: rename a file or project Rollback: reverts a file to an earlier version
7
SCC Alternatives Some Representative SCC AccuRev www.accurev.com
BitKeeper ClearCase CVS Perforce StarTeam Subversion Vault Visual Source Safe
8
Choose? Price Concurrent Development Style The repository
Checkout/edit/checkin (VSS) Edit/merge/commit (CVS) The repository Internet Friendliness IDE Integration Advanced Commands Cross-Platform Support
9
Discussion SCC Etiquette Proper use of Label (Tags)
Work with as few files as possible at one time Two styles compare Proper use of Label (Tags) Easy to remember and find At significant points Branching Discipline When different developers in the same project follows different rules Create only when needed Handles branching by actually creating branches Miscellaneous Rules Use the integration Chapter 9 “Tracking and Squashing Bugs”
10
SCC Checklist Use it Use command efficiently Choose your SCC
Place all dev. Artifacts to SCC Checkout only when you need it Comment changes when checkin Label at significant points Create a branch whenever the rules change Use SCC with bug tracking
11
CVS General CVSNT (CVS Window Server) WinCVS (CVS Window Client)
CVS Homepage Introducton ppt CVS Book CVS Commmand CVSNT (CVS Window Server) CVSNT Homepage Installation Guide WinCVS (CVS Window Client) WinCVS Homepage Installation & Config Guide
12
CVS RCS (Revision Control System) SharpCVSLib (CVS Client Library)
By Walter Tichy, Purdue University software tool for UNIX systems which lets people work on system control Reference SharpCVSLib (CVS Client Library) A Client API for the CVS protocol, written in C# SCVSLib Homepage
13
CVS CVSNT Running
14
CVS WinCVS Login
15
CVS WinCVS: User Gang Import module
16
CVS WinCVS: User Charlie checkout module
17
CVS WinCVS: User Charlie Edit a file
18
CVS WinCVS: User Charlie commits the file
19
CVS WinCVS: User Gang edits the same file, commits his version and causes a conflict
20
CVS WinCVS: User Gang checks version tree
21
CVS WinCVS: User Gang retrieves the old version
22
RCS File head 1.3; access; symbols arelease:1.1.1.1 avendor:1.1.1;
locks; strict; @; 1.3 date ; author Gang; state Exp; branches; next 1.2; deltatype text; permissions 644; commitid af041659b940c05; kopt kv; read 1.2 date ; author Charlie; state Exp; branches; next 1.1; deltatype text; permissions 644; commitid d ; kopt kv; read ……
23
End of Presentation
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.