Chinaunix首页 | 论坛 | 博客
  • 博客访问: 552294
  • 博文数量: 83
  • 博客积分: 6010
  • 博客等级: 准将
  • 技术积分: 1169
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-29 22:34
文章分类

全部博文(83)

文章存档

2011年(3)

2010年(29)

2009年(30)

2008年(21)

我的朋友

分类: LINUX

2008-09-13 22:35:18

本文参考了

写本文只是为了便于自己查找。

1,安装、初始化、配置

emerge -av subversion 安装

svnadmin create /path-to/repos

创建一个svn仓库,注意/path-to/repos必须与/etc/conf.d/svnserve中的SVNSERVE_OPTS="/path-to/repos"一致。

下面是设置权限

# chown -R svn:svnusers /path-to/repos

# chmod -R g-w /path-to/repos

# chmod -R g+rw /path-to/repos/db

# chmod -R g+rw /path-to/repos/locks

把要使用svn的用户加入svnuses组:# gpasswd -a userid svnusers

导入项目: # svn import mytree file:///path-to/repos/some/project

修改文件/path-to/repos/some/project/conf/svnserve.conf

把下面两个选项打开:

password-db = passwd
authz-db = authz

再修改文件/path-to/repos/some/project/conf/passwd,加入你允许访问的用户及密码,比如:

[users]

svn = xxx

修改文件/path-to/repos/some/project/conf/authz,修改用户权限,比如:

[/]

svn = rw

这样就可以以用户svn来访问project了

2,常用命令

初始化检出:$ svn checkout --username svn

典型的工作周期是这样的:

  • 更新你的工作拷贝svn update

  • 做出修改

    • svn add

    • svn delete

    • svn copy

    • svn move

  • 检验修改

    • svn status

    • svn diff

  • 可能会取消一些修改

    • svn revert

  • 解决冲突(合并别人的修改)

    • svn update           更新到最新版本

           svn update -r num 恢复到指定版本

    • svn resolved

  • 提交你的修改

    • svn commit

  • svn log 展示每个版本附加在版本上的作者与日期信息和所有路径修改
  • svn log 导出某一版本,便于打包(不含.svn目录)
还有一个有用的选项 -r --revision,指定某个版本。

3 分支与合并

创建分支:
svn copy trunk branches/my-calc-branch

分支合并:
$ cd calc/trunk
$ svn merge -r 341:405

这里只给出了简要的例子,关于版本控制的理念尤其是第一次接触版本控制工具(cvs,svn,git)的人来说建议把
看下。

阅读(2064) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~