一、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]的选项(与之匹配的是动态库及文件夹)