Introduction Slide
Total Page:16
File Type:pdf, Size:1020Kb
HPCC Mid-Morning Break HPCC Version Control Systems Outline • What is version control? • Version Control Systems • VCS Hosting • Why use HPCC hosting? • Git Clients • Subversion Clients • Resources What is Version Control? • Tracks changes made to code by multiple contributors over time. • Can “rewind” to earlier versions without having to manually undo changes to code. • Can gracefully merge changes to the same file by different people in many cases. Version Control Systems 1 • Repositories Store files, information about the files, and changes to the files. Store history of changes to the files. • Tools Make working copies of repositories and update those copies. Copy changes from your working copy to repositories. Version Control Systems 2 • Good free and open source software is out there: Bazaar (bzr), Git, Mercurial (hg), and Subversion (svn). • HPCC officially supports Git and Subversion. • HPCC also provides CVS and Mercurial. VCS Hosting 1 • vcs.icer.msu.edu hosts Git and Subversion repositories which you can provide to arbitrarily-composed groups of collaborators. • CVS, Git, Mercurial, and Subversion are available on the HPCC dev nodes, but collaboration is more difficult there. VCS Hosting 2 • Git repositories can be accessed via HTTP, HTTPS, and SSH transports. • Subversion repositories can be accessed via SSH transport. (We will likely add HTTP and HTTPS transports later.) • CVS and Mercurial repositories are not presently hosted on vcs.icer.msu.edu. Why Use HPCC Hosting? • Private repositories can be shared among collaborators but excluded from public viewing. • No need to create a new account somewhere else (uses your MSU NetID). • Most hosting sites charge a fee for hosting private repositories (Assembla, Beanstalk, GitHub, etc...) or only accept public repositories (SourceForge, Savannah, etc...). Git Clients • Linux and Mac OS X Commands: git • Windows Applications: msysgit: http://code.google.com/p/msysgit/ TortoiseGit: http://code.google.com/p/tortoisegit/ Subversion Clients • Linux and Mac OS X Commands: svn • Windows Applications: TortoiseSVN: http://tortoisesvn.net/ VisualSVN: http://www.visualsvn.com/visualsvn/ Resources • HPCC Version Control Documentation: https://wiki.hpcc.msu.edu/x/g4Oe • Git Information: http://git-scm.com/ • Mercurial Information: http://mercurial.selenic.com/ • Subversion Information: http://subversion.apache.org/ Questions?.