210 likes | 473 Views
By: Eric Binnion and Simbarashe Musarurwa. GIT : A Distributed version control system. Outline. Version Control Centralized Version Control Distributed version Control Tools Mac Tools Windows Tools Command Line Usage Workflows Individual Group or Team. What is Version Control?.
E N D
By: Eric Binnion and SimbarasheMusarurwa GIT : A Distributed version control system
Outline • Version Control • Centralized Version Control • Distributed version Control • Tools • Mac Tools • Windows Tools • Command Line Usage • Workflows • Individual • Group or Team
What is Version Control? • Records changes to a file or set of files over time so that you can recall specific versions later. • Incremental Changes
Centralized Version Control • Single server contains all versioned files • Clients check out files from the central place, and all changes pushed to server • Has been standard for many years • Disadvantages: • Slow • No redundancy • If server goes down, no local tracking of files
Distributed Version Control • Clients fully mirror the repository • Redundant • All clients have entire history • Easier Collaboration • Multiple workflows • Faster
Which is best? • In most cases, GIT is the better choice. • However, SVN has been around the block and has greater support for automatic deployment, bug tracking, testing, etc.
Simple Workflow • Assuming Gitis installed and you are in project directory. • `gitinit` • `git add –A` • `git commit –m ‘message here’` • `git remote add origin remote-url` • `git push origin master` • `git reset –soft HEAD^`
Bibliography • Git Branchhttp://gitref.org/branching/#branch • GitInithttp://git-scm.com/docs/git-init • Version Controlhttp://git-scm.com/book/en/Getting-Started-About-Version-Control • SVNhttp://svnbook.red-bean.com/en/1.6/svn.intro.whatis.html