一、SVN服务器的搭建
1. 安装包
Ubuntu下
sudo apt-get install subversion
2. 添加svn管理用户及subversion组
sudo adduser svnuser
sudo addgroup subversion
sudo addgroup svnuser subversion
3. 创建项目目录
sudo mkdir /home/svn
cd /home/svn
sudo mkdir fitness
(fitness即为仓库名称)
4. 创建SVN文件仓库
sudo svnadmin create /home/svn/fitness
(此处即为该项目的文件仓库)
5. 更改文件夹权限
sudo chown -R root:subversion fitness
sudo chmod -R g+rws fitness
6.创建SVN用户和密码,设置权限
(1)修改/home/svn/fitness/conf/svnserve.conf
将以下代码前的#去掉(前面不能有空格)
anon-access = read 此处设置的是匿名用户得权限,如果想拒绝匿名用户则设置为none
auth-access = write 设置有权限用户得权限
password-db = passwd 指定查找用户名和密码得文件,这样设置即为本目录下得passwd文件
authz-db = authz 制定各用户具体权限得文件,这样设置即为本目录下得authz
1. 修改/home/svn/fitness/conf/passwd
该文件规定了用户名和密码,增加以下内容:
admin = 123456
user1 = 123456
user2 = 123456
1. 设置用户权限
在/home/svn/fitness/authz下
在[groups]下增加以下内容
admin = admin
user = user1,user2 规定了两个组,admin和user
[/] 根目录权限
admin = rw admin用户得权限为读写
@user = r user组的权限,指定组前面必须加上@
[/trunk/fitness] 制定该目录权限
@user=rw
权限有继承性,子文件夹能够继承权限
7.进入另外得一个目录下创建副本,访问方式及项目导入:
svn co file:///home/svn/fitness
执行完该步骤后,在本目录下产生了一个名为fitness的副本
8启动服务
svnserve -d -r /home/svn
-d 表示svnserver以“守护”进程模式运行
-r 指定文件系统的根位置(版本库的根目录),这样客户端不用输入全路径,就可以访问版本库
如: svn://192.168.2.230/fitness
出现没有权限 sudo chmod 777 db/* -R
二、SVN的客户端TortoiseSVN上提交文件至服务器
svn服务器中已经存在某个目录1:
1、在电脑本地某个文件夹(2)下checkOut(服务器上已经存在文件夹1,1的所有东西都存在2中了,2中有.svn记录)
2、在该文件夹(2)下将要上传的文件(包括文件夹及文件)放进去
3、在2目录中commit
svn服务器中不存在某个目录1:
1、在SVN服务器中创建新路径1
2、check out至本地文件夹2中
3、将文件放在2中,commit即可
三、主要事项
TortoiseSVN的设置,在tortoiseSVN中的settings中General->Subversion->Global ignore pattern中去掉* *.so *.so.*[0-9]的选项(与之匹配的是动态库及文件夹)