Differences
This shows you the differences between two versions of the page.
|
|
software:scm [2010/07/07 20:08] cyril +svn Remove file from index |
software:scm [2013/09/19 16:40] |
====== Source Code Management software comparison ====== | |
| |
:!: **Warning:** This is only a memo, don't use this table if you don't know what these commands will do. These SCM don't have the same philosophy and don't behave the same way, these equivalences are approximations. | |
| |
There is a [[software:git|detailed page for git]]. | |
| |
Common tasks: | |
^ Task ^ GIT ^ SVN ^ CVS ^ | |
| //Get Repository// | ''git clone <url> [<rep-name>]'' | ''svn checkout <url> [<rep-name>]'' | ''export CVSROOT=<url>;''<html><br/></html>''mkdir <rep-name>; cd <rep-name>;''<html><br/></html>''cvs checkout .''<html><br/></html>or<html><br/></html>''cvs -d <repo> checkout [-d <dest-dir>] <sub-dir>''| | |
| //Update// | ''git pull'' | ''svn up'' | ''cvs update'' | | |
| //Commit// | ''git commit -a; git push'' | ''svn commit'' | ''cvs commit'' | | |
| //Add files// | ''git add <file>'' | ''svn add <file>'' | ''cvs add <file>'' | | |
| //Diff// | ''git diff [a7a57d0390 b7d15a91c7]'' | ''svn diff [-r r4042:r4043] | less'' | ''cvs diff [-r 1.42 -r 1.43] | less'' | | |
| //Log// | ''git log'' | ''svn log | less'' | ''cvs log | less'' | | |
| //Status// | ''git status'' | ''svn status'' | ''cvs -q status | grep '^[?F]' | grep -v 'to-date' '' | | |
| //Revert file// | ''git checkout <file>'' | ''svn revert <file>'' | ''cvs update -C <file>'' | | |
| //Mark conflict solved// | ''git add <file>'' | ''svn resolved <file>'' | | | |
| |
Less common tasks: | |
^ Task ^ GIT ^ SVN ^ CVS ^ | |
| //Commit some files// | ''git add <files>; git commit; git push''<html><br/></html>''git commit -o <files>; git push'' | ''svn commit <files>'' | ''cvs commit <files>'' | | |
| //Diff -w// | ''git diff -w'' | ''svn diff -x -w | less'' | ''cvs diff -w | less'' | | |
| //Remove file from index// | | ''svn rm --keep-local <file>'' | | | |
| |
| |