SVN常规使用举例

1. 代码内容没变,但是svn url的写法变了

时常会遇到这种场景,比如IP换域名,域名换新域名,换机器host,svn://换http://等等,就是代码结构没变,只是服务端的url path变了。

svn relocate svn://example.com/repos/pc/project/trunk

2. 版本对比diff

当前路径下,对比最近两个版本:

svn diff -rprev

对比主干和分支:

svn diff . ^/repos/pc/project/branches/bugfix-xxx/

对比当前路径的两个版本:

svn diff -r186:190

注意:后面可以接路径,也可以不接路径,就是默认当前路径,但不管怎么样,两个版本号必须是存在于此路径的历史中的。

3. 代码回滚

代码回滚到某个历史版本:

svn up -r186

不加版本号就是更新到最新,更新到上个版本就是:

svn up -rprev

总之,在svn里,版本号有多种表达方式,最常规的就是一个数字,还有'HEAD'路径最新,'PREV'路径上一个版本,'BASE'路径的基础版本,'{' DATE '}' 以日期开头的版本

4. 删除存储密码

svn的客户端密码存储在~/.subversion/auth/svn.simple/下,查看账户(不显示密码)的命令为:

svn auth

通过如下命令可以查看本地存储的密码:

svn auth --show-passwords

查看时,可以写任何的pattern进行匹配,删除存储的账户也是一样,这里直接用认证的IP路径进行匹配:

svn auth --remove 192.168.0.5

5. svn add之后又想取消,svn delete之后又想取消

非常简单:

svn revert xxx

6. svn错误地将文件判定为二进制文件

判定为bin类型的文件不支持diff,此时需要修改属性:

svn propedit svn:mime-type xxx

将识别的文件类型改为text/plain,即可

7. 文件改名或者目录移动

svn mv SRC DST

mv也是rename, ren, move的别名。

 

发表于 09月22日 11:58   评论:0   阅读:65  



回到顶部

首页 | 关于我 | 关于本站 | 站内留言 | rss
python logo   django logo   tornado logo