1.将文件checkout到本地目录

svn checkout path(path是服务器上的目录)
例如:svn checkout svn://192.168.1.1/pro/domain

2.更新到某个版本

svn update -r m path
2 例如:
3 svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。
4 svn update -r 200 test.php(将版本库中的文件test.php还原到版本200)
5 svn update test.php(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit)
6 简写:svn up

3.版本库下的文件和目录列表

1 svn list path
2 显示path目录下的所有属于版本库的文件和目录
3 简写:svn ls

4.恢复本地修改

1 svn revert: 恢复原始未改变的工作副本文件 (恢复大部份的本地修改)。revert:
2 用法: revert PATH…
3 注意: 本子命令不会存取网络,并且会解除冲突的状况。但是它不会恢复
4 被删除的目录

5.代码库URL变更

svn switch (sw): 更新工作副本至不同的URL。
用法: 1、switch URL [PATH]
2、switch –relocate FROM TO [PATH...]
 
1、更新你的工作副本,映射到一个新的URL,其行为跟“svn update”很像,也会将
服务器上文件与本地文件合并。这是将工作副本对应到同一仓库中某个分支或者标记的
方法。
2、改写工作副本的URL元数据,以反映单纯的URL上的改变。当仓库的根URL变动
(比如方案名或是主机名称变动),但是工作副本仍旧对映到同一仓库的同一目录时使用
这个命令更新工作副本与仓库的对应关系。

6.删除文件

1 svn delete path -m “delete test fle“
2 例如:svn delete svn://192.168.1.1/pro/domain/test.php -m “delete test file”
3 或者直接svn delete test.php 然后再svn ci -m ‘delete test file‘,推荐使用这种
4 简写:svn (del, remove, rm)

7.提交

svn add 目录名 --force

8.SVN更新项目A C D M G U R I的含义

A:add,新增

C:conflict,冲突

D:delete,删除

M:modify,本地已经修改

G:modify and merGed,本地文件修改并且和服务器的进行合并

U:update,从服务器更新

R:replace,从服务器替换

I:ignored,忽略

9.1 取消Add/Delete

取消文件

svn revert 文件名

取消目录

svn revert --depth=infinity 目录名

9.2 回退版本 用svn merge

1) 先 svn up,保证更新到最新的版本,如20;

2) 然后用 svn log ,查看历史修改,找出要恢复的版本,如10 。如果想要更详细的了解情况,可以使用svn diff -r 10:20 [文件或目录];

3) 回滚到版本号10:svn merge -r 20:10 [文件或目录],注意版本号之间的顺序,这个叫反向合并;

4) 查看当前工作版本中的文件,如test.cpp和版本号10中文件的差别:svn diff -r 10 test.cpp, 有差别则手动改之;

5) 若无差别,则提交:svn ci -m“back to r 10,xxxxx” [文件或目录]。或者 svn commit -m 'back to r 10' 这时svn库中会生成新的版本,如21。