转自:http://idcnews.net/html/edu/20070101/286679.html
svn 命令操作很简单
和cvs的操作基本一致 。
对于日常操作来说,最常用的就是那几个命令, svn co/update/add/ci
修改了某个文档,想传上去: svn ci bob.c -m "bob modify"
假如 想想cvs 那样, cvsi ci bob.c 的时候自动弹出 vi窗口,要配置SVN_EDITOR变量: export SVN_EDITOR=/usr/bin/vim , 能够写死在 /root/.bash_profile 里面去。
新添加了某个文档, 想传上去, echo 1 > bob.c ; svn add bob.c ; svn ci bob.c
自己修改了, 发现错了, 想恢复到svn上面的版本, 能够用 svn update bob.c -r25 // 25 是版本号 。
想要删除某个文档bob.c : svn del bob.c ; svn ci bob.c
想完全更新某个目录(可能改了某个目录的一些文档,都不想要了) , svn revert -R xxx (xxx是那个目录)
------
比如 ,我checkout下来后,新建了一个目录,然后要上传整个目录, 这点比cvs强,
svn add xxx (xxx就是那个目录) ,他会递规的增加整个目录的。
然后 svn ci 即可
SVN 使用之注意事项:
再次强调一点使用svn/cvs 的流程:
比如bob ,假如我修改了比较大的地方的代码,
我的流程是:
1>checkout 下来kernel的最新版本 (假如以前已有了就update 一下 , 具体的命令不能用update ,应该用svn revert
2> 修改,本地调试, 测试ok
3> check in 自己修改过的文档和增加的文档(svn add xxx) 。 注意人无完人, 可能会忘记传了某个文档, 您能够在根目录下 ,执行svn ci ,他会列出来您改了哪些文档
4> 上传完毕后, 把全部代码 checkout 下来 ,编译, 测试, 假如ok , 发mail 给相关的人, 内容,比如“I have updated "drivers/fs/ext3.c , pls update it " ,总之越周详越好,
最好精确到文档, 假如不能精确到文档 ,也要精确到目录, 不要说 ,"我更新了kernel的代码, 您update一下”这样的话 , 会给别人增加工作量,kernel 那么多的代码, 别人总不能每次都update , 那样时间会很长。
5> 等待着别人的问题报告。。。。。。
注意事项: 当您都没有稳定某个c文档的时候 ,不要check in , 不要三天两头checkin svn上的同一个文档(假如是这样,只能说明,您的改的还不稳定, 先自己测试稳定了再传)
另外, svn 不是个人的备份的仓库,是大家的财产,要一字千金的改。
能够参考, 我的帖子:
http://infomax/bbs/viewthread.php?tid=8&page=1&extra=page%3D1
下面是其中的一部分, 对于日常用已足够了。
svn 命令操作很简单 ,和cvs的操作基本一致 。
下面列出一些最简单常用的 。 对于EasySVN的用法, 都是图像界面,能够自己仔细琢磨一下 ,能够问Kyo ,Kyo比较熟悉。
! 利用平时的空闲时间 ,利用
http://192.168.167.103/svn/try/uucp-1.07
来练熟他 , 不要等到自己用的时候 ,手忙脚乱。 uucp-1.07 专门练手用 ,乱掉也没有关系。
对于日常操作来说,最常用的就是那几个命令, svn co/update/add/ci
1>修改了某个文档,想传上去: svn ci bob.c -m "bob modify"
2>假如 想想cvs 那样, cvsi ci bob.c 的时候自动弹出 vi窗口,要配置SVN_EDITOR变量: export SVN_EDITOR=/usr/bin/vim , 能够写死在 /root/.bash_profile 里面去。
3>新添加了某个文档, 想传上去, echo 1 > bob.c ; svn add bob.c ; svn ci bob.c
4>自己修改了, 发现错了, 想恢复到svn上面的版本, 能够用 svn update bob.c -r25 // 25 是版本号 。
5>想要删除某个文档bob.c : svn del bob.c ; svn ci bob.c
6> 想完全更新某个目录(可能改了某个目录的一些文档,都不想要了) , svn revert -R xxx (xxx是那个目录)
------
7>比如 ,我checkout下来后,新建了一个目录,然后要上传整个目录, 这点比cvs强,
svn add xxx (xxx就是那个目录) ,他会递规的增加整个目录的。
然后 svn ci 即可
注:本人现在使用的是.net 开发,所以都是在windows 下部署svn 服务器,客户端使用TortoiseSVN,在团队中使用svn,个人操作流程很重要。否则出现问题会五花八门。