Wednesday, November 10, 2010

Git vs SVN (subversion) version control system (VCS)

Git
- Distriubted, users have their own copy, fast - no network latency (except for push and fetch/pull) for branch switch, diff, status, commit, merge
- Better branch handling, every working directory is a branch
- Easily switch branches without creating a separate checkout
- Takes up less space, only one copy is kept
- SHA1 to identify a commit, use a tag instead

Svn
- more mature user interface eg. Tortoise, RapidSVN
- single repository, know where files are stored
- access control
- revision numbers, easy to track



https://git.wiki.kernel.org/index.php/GitSvnComparison

git clone https://github.com/proj/proj my_proj
cd my_proj
git pull
git add new_file
git commit -m 'Adding new file'
git pull
git push
git checkout revert_file

No comments: