1)检出文件到本地
最新版本
svn checkout http://...
某历史版本
svn checkout –r 版本号 http://...
2)更新版本
最新版本
svn update
某历史版本
svn update -r 版本号
3)输出版本等信息
svn info
4)对比工作文件与缓存在.svn的“原始”拷贝
svn diff
5)生成本地改动的patch
整个工程变动生成patch文件
svn diff > file.patch
某个文件单独变动的patch
svn diff file > file.patch
6)生成某个指定提交的patch
r25313的修改
svn diff -c r25313 > file.patch
r25313的反修改
svn diff -c -r25313 > file.patch
7)生成两个提交之间的patch
r25111以后到r25313,当前目录的所有修改,不包括r25111修改
svn diff -r r25311:r25313 > file.patch
r25111以后到r25313,当前目录的所有修改,包括r25111修改
svn diff -r r25111-r25313 > file.patch
8)打patch
从当前目录查找目的文件(夹)
patch -p0 < file.patch
从当前目录查找目的文件(夹),不包含patch中的最上级目录
patch -p1 < file.patch
9)回退patch
从当前目录查找目的文件(夹)
patch –p0 -R < file.patch
从当前目录查找目的文件(夹),不包含patch中的最上级目录
patch –p1 -R < file.patch
10)取消本地代码的修改
单个文件时
svn revert 文件名
整个目录时,需要加上参数-R(Recursive,递归)否则只会改动目录
svn revert –R 目录名
11)显示工作副本中目录与文件的状态
svn status
“ ”无修改
“A”新增
“C”冲突
“D”删除
“G”合并
“I”忽略
“M”改变
“R”替换
“X”未纳入版本控制,但被外部定义所用
“?”未纳入版本控制
“!”该项目已遗失(被非svn命令所删除)或是不完整
“~”版本控制下的项目与其它类型的项目重名