Subversion是超越CVS的、支持事务的、高性能的版本控制系统,和zope/Plone也有一些姻缘
目前Zope/Plone的代码均采用subversion来管理,而且已经 可以和Plone集成,而且已经有了使用svn做为ZODB存储介质的产品。在windows下有方便使用的windows客户端工具。
这里记录一下subversion的基本操作,更详细的内容可参加Subversion中文手册。
- 得到帮助
使用svn help可得到具体的帮助
- 创建SVN库
此操作一般由svn用户创建: svnadmin create --fs-type [fsfs|bdb] /home/svn/NewResp
- 导入文件夹下的数据到库中
类似于copy,应该使用非root用户操作: svn import /usr/local/zopeinstance/PloneMailBoxer file:///home/svn/NewResp/PloneMailBoxer 注意:导入后一般需要把本地的程序删除后,再checkout
- checkout
svn checkout file:///home/svn/NewResp/PloneMailBoxer PloneMailBoxer 注意,必须写目录
- 编辑修改操作
- 添加一个文件到svn
svn add filename 注意不需要写库的url
- 从svn中删除一个文件
svn delete filename
- 比较当前更改
svn diff
- 比较文件状态
svn status
- 获取最新版本
如果别人也更改了其他的文件,需要使用此命令得到其他人的最新更改。 svn update
- 如果update发生冲突,svn resolve
- 取消修改
svn revert
- 提交修改
svn commit:全部提交 svn commit filename 提交某个文件
SVN的管理:
- 配置邮件通知
-
- 将库中hooks/post-commit.tmpl改名为post-commit,并让其有执行权限
- 最后一行改为:
/usr/lib/subversion/hook-scripts/mailer/mailer.py "$REPOS" "$REV" /var/spool/svn/mailer.conf
- 修改mailer.conf,主要包括:
smtp_hostname / smtp_username / smtp_password / to_addr / subject_prefix
- 库的热备份(todo)
- 用户访问权限控制(todo)
|