常见的svn客户端命令
svn add -添加到版本控制
svn commit - 提交修改到服务端(创建一个新的版本号)
svn update - 更新工作副本
svn delete -从版本库中删除文件或目录
svn add:
svn add 文件(or文件夹) //直接增加文件或者文件夹以及文件夹所有文件
svn add 文件夹 --non-recursive //只增减文件夹而不增加文件夹里面的内容
svn add * //增加所有的文件.如果一个目录的本身已经增加,则不会增加目录里面的文件
svn add * --force //强制增加所有文件
svn commit :
svn commit -m "" 文件名 = svn ci -m "" 文件名 //-m表示提交备注 . 是必须要加的.
svn commit -m "" * //提交所有新增文件
svn update :
svn update的特性:默认情况下,每个文件只会从服务端更新一次最新版本.
svn update = svn up
svn up - r 版本号 文件名 //指定文件名更新到指定版本
svn up * //所有文件都会强制更新到最新文件
svn delete :
svn delete = svn del = svn remove = svn rm // -m 可加可不加
删除之后提交 svn ci -m ""
svn diff -版本差异比较
svn mkdir -创建目录并增加到版本控制
svn cat -不检出工作副本直接查看指定文件
svn diff:
svn diff 文件名 = svn di 文件名 //比较工作副本与最新版本的差异
svn di -r 版本号 文件名 //比较工作副本与历史版本的差异
svn di -r 版本号:版本号 文件名 //比较两个历史版本的差异
svn mkdir:
svn mkdir 文件夹 //创建文件夹并直接增加到版本库
svn cat :
svn cat svn://服务器Ip地址/文件名
工作副本还原
svn revert 文件名
svn revert * //批量还原,但是只会还原当前目录下被修改过的文件,不会递归修改
svn revert --recursive * //递归还原所有被修改过的文件
二进制与树冲突
树冲突:发生树冲突的文件都不是二进制文本文件,树冲突无法精确到行并且处理树冲突必须处理整个文件.
冲突的处理:
发生冲突时一般 选择p进行推迟处理
svn reslove 文件名
选择p稍后提交,然后编辑过后需要 svn resloved 文件名 然后重新提交 svn ci -m "" 文件名
锁定与解锁
svn lock -锁定文件,防止其他成员对文件进行提交
svn unlock -解锁文件
svn lock 文件名,当锁定人提交过之后会自动解锁,如果不想自动解锁则提交时 svn ci -m "" --no-unlock 文件名
远离锁定.