Revision Control Systems - PowerPoint PPT Presentation

revision control systems n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Revision Control Systems PowerPoint Presentation
Download Presentation
Revision Control Systems

play fullscreen
1 / 21
Revision Control Systems
198 Views
Download Presentation
barth
Download Presentation

Revision Control Systems

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Revision Control Systems Amin Tootoonchian Kian Mirjalali

  2. Outline • Revision Control Systems • Samples • Subversion • ClearCase Revision Control Systems

  3. Revision Control Systems • An SCM activity • Controlled and incremental changes • Revision control/Version control/Source control • Management of multiple revisions of the same unit of information • Uses • Engineering • Software development Revision Control Systems

  4. Storage Models • Models • Centralized • Shared server • SVN, ClearCase, … • Distributed • Changes shared between distributed repositories • No network connection required • TeamWare, GNU arch, … • Compression • Delta compression differences are retained Revision Control Systems

  5. Concurrent access • Locking and granting modification access to one developer at a time • Protection against difficult merge conflicts (in the case of radical changes possibly) • Release of lock! • Allow multiple editing at the same time • Facilities to merge changes later • Reserved edit • Optional operation to provide exclusive access (by locking) Revision Control Systems

  6. Integration • Integration with software engineering process and other tools • Deeper integration with IDEs by using plugins to provide easy access to revision control system • Plugins for Eclipse, Visual Studio, Netbeans • e.g. subversion plugin for eclipse Revision Control Systems

  7. Repository Working copy Check-out Commit Change Change List Update Merge/Integration Revision/Version Import Export Conflict Resolve Baseline Terms Revision Control Systems

  8. Subversion • Open Source instance of a version control system • Abbreviated to svn in reference to the name of its CLI • Modern replacement for CVS • Shares a number of the same key developers Revision Control Systems

  9. Subversion – Features • Atomic commits • Renamed/copied/moved/removed files retain full revision history • Versioned directories, renames, and file metadata • Entire directory trees can be moved around and/or copied very quickly, and retain full revision history • Versioning of symbol links • Full MIME support Revision Control Systems

  10. Subversion – Features (cont’d) • Native support for binary files • Space-efficient binary-diff storage • Apache HTTP server as network server • Costs proportional to change size, not the data size • Parsable output, including XML log output • Open Source licensed • File locking for unmergeable file • Reserved checkouts Revision Control Systems

  11. Subversion – Repository access • Local or network file system, accessed directly • WebDAV/DeltaV (over http or https) • mod_dav_svn module for apache2 • Custom svn protocol • Plaintext • Over SSH Revision Control Systems

  12. Subversion – Layers • Fs • Lowest level • Versioned file system which stores the user data • Repos • Repository built up around the file system • Helper functions/handles various hooks • File system interface = Fs + Repos • mod_dav_svn Revision Control Systems

  13. Subversion – Layers (cont’d) • Ra • Handles repository access both local and remote • Client, Wc • Highest level • Abstracts repository access • Provides common client tasks • Wc library used by the client to mange the working copy Revision Control Systems

  14. Subversion – File System • Three dimensional • Two dimension • Tree structure • Third dimension • Each revision has its own root • Files • Links to the most recent changes made  Compactness • Transactions used to keep changes atomic Revision Control Systems

  15. ClearCase • Rational Software • Large and medium sized projects • Two types: • UCM • base ClearCase Revision Control Systems

  16. ClearCase – Views • Versioned Object Base (VOB) • Multi-version File System (MVFS) • Dynamic views • Snapshots • View-private files • Branch hierarchy Revision Control Systems

  17. ClearCase – Configuration Specifications • For each view • Collection of rules: • Visible elements in a view • Which versions of these elements • “include” statement Revision Control Systems

  18. ClearCase – Features • Configuration Record • Read files during the build are recorded. • Dependency information • Use: • Making other views • Applying labels • Build Avoidance • Copying over derived objects • If they have the same configuration record Revision Control Systems

  19. ClearCase – Features (cont’d) • Unix/Windows interoperability • Windows clients access by views • *nix clients access by snapshot views • Integration with other products • Rational Software • ClearQuest, Rational Rose, … • Microsoft Visual Studio • Eclipse IDE Revision Control Systems

  20. References • Wikipedia, the free encyclopedia • Version Control with Subversion - 1.2, O’Reilly Media • IBM Software – Rational ClearCase Documentation Revision Control Systems

  21. The END… Questions?Comments? Points of view? Revision Control Systems