使用 SubVersion 做开发
Subversion是一个自由/开源版本控制系统,它管理文件和目录可以超越时间。一组文件存放在中心版本库,这个版本库很像一个普通的文件服务器,只是它可以记录每一次文件和目录的修改,这便使你可以取得数据以前的版本,从而可以检查所作的更改。从这个方面看,许多人把版本控制系统当作一种“时间机器”。
Subversion可以通过网络访问它的版本库,从而使用户可以在不同的电脑上使用。一定程度上可以说,允许用户在各自的地方修改同一份数据是促进协作。进展可能非常的迅速,并没有一个所有的改变都会取得效果的通道,由于所有的工作都有历史版本,你不必担心由于失去某个通道而影响质量,如果存在不正确的改变,只要取消改变。
一些版本控制系统也是软件配置管理(SCM)系统,这种系统经过特定的精巧设计来管理源代码,有许多关于软件开发的特性—本身理解编程语言、或者提供构建程序的工具。然而,Subversion不是这样一个系统,它是一个通用系统,可以管理任何类型的文件集,对你这可能是源代码—对别人,可能是一个货物清单或者是数字电影。
SVN svnserve 方式安装及配置
I.Linux RedHat 9
1.卸载原版本
# rpm -ev subversion-0.17.1-4503.02.安装包
# rpm -ivh --nodeps apr-0.9.5-0.2.i386.rpm
# rpm -ivh --nodeps apr-util-0.9.5-0.1.i386.rpm
# rpm -ivh --nodeps neon-0.24.7-1.i386.rpm
# rpm -ivh --nodeps subversion-1.2.3-1.rh90.i386.rpm3.建立用户svn,创建repostory
$ svnadmin create /home/svn/svnroot4.启动SVN服务
$ svnserve -d -r /home/svn/svnroot
这样就简单的建立了一个基础的 SubVersion 开发环境,普通情况下代码是存放在 SubVersion 的数据库中,我们是无法直接把这些代码及时应用,当然 SubVersion 的功能不至于这么简单
我们可以在代码更新的时候添加一个 hook 上去,让 SubVersion 自动把代码更新到我们应用的地方。
添加自动更新的 hook
在 /home/svn/svnroot/hooks 创建一个名称为 post-commit 的脚本,内容为:
#!/bin/sh
REPOS="$1"
REV="$2"
# 第一次更新代码,请使用 checkout 方法把全部文件导出svn checkout svn://localhost /home/svn/willbe --username oneoo --password ******
# svn://localhost => SubVersion 访问地址
# /home/svn/willbe => 将要把代码输出到的目录
# 次后的代码更新只需要做 update 处理
#svn update /home/svn/willbe --username oneoo --password ******
快速链接:http://oneoo.com/go/6892.html
三月 16th, 2007 at 11:24 下午
oneoo,在linux下做开发?从来没玩过linux,这次出差回去看看买台机器,回头装个玩玩...