svn存储版本数据也有2种方式:
1.bdb;
2.fsfs。
下载相关软件:
wget http://subversion.tigris.org/downloads/subversion-1.6.6.tar.gz
wget http://subversion.tigris.org/downloads/subversion-deps-1.6.6.tar.gz
解压这两个文件一定要解压到同一个目录:
1.tar zxvf subversion-1.6.6.tar.gz
2.tar zxvf subversion-deps-1.6.6.tar.gz
进入目录:编译
/configure --prefix=/usr/local/svn --with-openssl=/usr/include/openssl --without-berkeley-db
后面以svnserve方式运行,所以不加apache编译参数。以fsfs格式存储版本库,不编译berkeley-db
如果编译时报如下错误:
no acceptable C compiler found in $PATH
说明没有gcc库,使用如下命令安装gcc后再编译:
yum -y install gcc
如果最后出现下面WARNING,我们直接忽略即可,因为不使用BDB存储。
configure: WARNING: we have configured without BDB filesystem support
You don't seem to have Berkeley DB version 4.0.14 or newer
installed and linked to APR-UTIL. We have created Makefiles which
will build without the Berkeley DB back-end; your repositories will
use FSFS as the default back-end. You can find the latest version of
Berkeley DB here:
http://www.sleepycat.com/download/index.shtml
继续编译:
make
make install
如果 make install 出现下面错误:
/home/upload/subversion-1.6.6/subversion/svnversion/.libs/lt-svnversion: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory
make: *** [revision-install] Error 127
解决办法:
1、编辑/etc/ld.so.conf文件
vi /etc/ld.so.conf
添加下面一行代码
/usr/local/lib
2、保存后运行ldconfig:
/sbin/ldconfig
注:ld.so.conf和ldconfig用于维护系统动态链接库。
3、然后再安装
make && make install
测试是否安装成功:/usr/local/svn/bin/svnserve --version
4、为了方便下操作,把svn相关的命令添加到环境变量中:
echo “export PATH=$PATH:/usr/local/svn/bin/” >> /etc/profile
source /etc/profile
完成安装。
接下来配置svn,建库
找一个方svn的地方,新建svn根目录,例如:/data/svndata,
接着建立一个仓库
新建文件:mkdir -p /data/svndata/testprofile
新建仓库:svnadmin create /data/svndata/testprofile
如果你们的研发中心有多个产品组,每个产品组可以建立一个SVN仓库
新建完进入testprofile的conf
修改:vi svnserve.conf
anon-access = none # 注意这里必须设置,否则所有用户不用密码就可以访问
auth-access = write
password-db = passwd
保存!
新增svn账号:
vi passwd
### 在下面添加用户和密码,每行一组username = password
[users]
# harry = harryssecret
# sally = sallyssecret
###===========下面是我添加的用户信息========#######
iitshare = password1
itblood = password2
保存!
接下来开启svn,先看下svn有没有服务或端口开启了:netstat -anp | grep svn
kill -9 svn端口号
svn服务的关闭:
#killall svnserve
svn开启:
#svnserve -d -r /data/svndata/testprofile--listen-port 3696(这个端口号自己设置)
这时候已开启完毕,接下来就到客户端(假设我这服务器ip:192.168.1.112)
客户端:
checkout svn :url地址:192.168.1.112:3696 即可
接下来输入账号密码就好了。