Version Control CSC 517 John Slankas Version Control

  • Slides: 11
Download presentation
Version Control CSC 517 John Slankas

Version Control CSC 517 John Slankas

Version Control Managing files and directories, and the changes made to them over time.

Version Control Managing files and directories, and the changes made to them over time. - Adapted from “Version Control with Subversion”

Why Use it Personally? • History • Backups • Snapshots

Why Use it Personally? • History • Backups • Snapshots

Why Use it as a Team? • Personal benefits • Multiple developers • Merge

Why Use it as a Team? • Personal benefits • Multiple developers • Merge changes • Who did what?

Available Repositories • • RCS / SCCS CVS Subversion Visual Source. Safe Git Rational

Available Repositories • • RCS / SCCS CVS Subversion Visual Source. Safe Git Rational Clear. Case CA Harvest And many, many more

Which One to Use? • What capabilities are needed? • What is available? •

Which One to Use? • What capabilities are needed? • What is available? • What is my budget? • What intergrates with my IDE? • What comes with my IDE? • Do I have to use something?

Subversion (SVN) • Successor to CVS • Well-adopted in the open source community •

Subversion (SVN) • Successor to CVS • Well-adopted in the open source community • Client-server based • NCSU’s CSC Department provides an environment

Eclipse Plug-in Installation • Two components (for Subversive) – Plug-in – Connector • Configure

Eclipse Plug-in Installation • Two components (for Subversive) – Plug-in – Connector • Configure repository • Instructions available on course website • Subclipse is available as well (http: //subclipse. tigris. org)

Demo • Start VCL • Start Eclipse • New project, import String. Util file

Demo • Start VCL • Start Eclipse • New project, import String. Util file • Configure Subversion • Put project under version control • Make code change and commit • View history and compare versions

Branches and Tags Branches: Isolate changes to another development line Tags: Snapshot of the

Branches and Tags Branches: Isolate changes to another development line Tags: Snapshot of the content Image: http: //en. wikipedia. org/wiki/Subversion_(software)

Exercise 3: j. Unit & Version Control • Install Subversive plug-in and connectors (Not

Exercise 3: j. Unit & Version Control • Install Subversive plug-in and connectors (Not necessary on the VCL image) • Configure Subversive against the CSC Repository URL: https: //svn. csc. ncsu. edu: 8443/svn/csc-517 -untiyid • Create a new Java project • Import the String. Util class • Create a j. Unit test case for String. Util that tests a “normal” run of the reverse() method. (i. e. , reverse(“hello”) returns “elloh”) • • • Check in the project to SVN Run your test case. Fix code as appropriate. Commit changes. Add another test case for passing null to reverse() Run your test cases. Fix code as appropriate. Commit changes. Compare the two versions of the String. Util class