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 detailed page for git.

Common tasks:

Task GIT SVN CVS
Get Repository git clone <url> [<rep-name>] svn checkout <url> [<rep-name>] cvs -d <rep-name> checkout [-d <dest-dir>] <sub-dir|.>
Update git pull svn up cvs update [-d]
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<br/>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>