110 likes | 242 Views
Subversion. Team B. Outline. Version Control 2. Subversion vs CVS 3. Demo. What is revision control. Revision control is the management of changes to documents, programs , and other information stored as computer files . put it another way,
E N D
Subversion Team B
Outline • Version Control 2. Subversion vs CVS 3. Demo
What is revision control Revision control is the management of changes to documents, programs, and other information stored as computer files. put it another way, track every change to every document and identify the change with number, letter, and time. Revisions can be compared, restored, and with some types of files, merged.
why version control is needed 1.no need to notify other members before change the project file. 2.no need to manually duplicate the original version before change the project file 3.no need to tell other members or remeber what changes you have made
How it works File sharing 1.Lock-Modify-unlock solution problem: one-by-one, no concurrency,security 2.Copy-modify-merge each client gets a working copy problem: conflict?---manually fix it,communication
When lock-modify-unlock is necessary file with binary formate like sound and video when copy-modify-merge is necessary line-based text file can be contextually mergeable
Track the change 1.graphic demonstration 2.color,number-highlight demonstration 3.comparison demonstration 4.user-defined demonstration
Branch 1.Create branches by copying your data 2.Maintain parallel branches of your file and directory 3.duplicate changes from one branch to another branch 4.reflect differences among branches
Why Subversion over CVS • can move or rename files or directories cleanly • atomic commits • good remote options http/https/svn vs pserver • file formats
Basic operations in subversion svn --help svn addfilename/directory svn deletefilename/directory svn checkout http://nodename/repos/svn/trunk/parentPath/path svn commit --message "Message goes here." filename svn difffilename svn mkdirdirectory svn importlocal-directory http://node/repos/svn/trunk/directory svn logfilename svn merge file1@revJfile2@revK svn status svn update filename