Ubuntu 下svn安装及相关配置 SVN添加新项目

Ubuntu 下svn安装及相关配置 SVN添加新项目

Ubuntu 下Svn安装,配制,使用

注:部分内容为网友资料整理

一.安装

1. apt-get install subversion

2. apt-get install libapache2-svn

3. apt-get install subversion subversion-tools

二.创建仓库

/usr/local/svn# svnadmin create Repository

三.chown -R root /usr/local/svn/Repository/(注:加入组权限)

四.svnserve -d –foreground -r /usr/local/svn/Repository/  (注:前台运行svn ,不是超级用户要用sudo,关闭svn服务可用killall svnserve)

五.用户权限管理

有三个文件分别是:svnserve.conf(访问控制文件),passwd(帐号密码文件),authz(登陆用户权限设置文件)

1. 更改svnserve.conf文件:   注意去掉#号时,请也把后面的空格删除,防止不必要的错误

#匿名用户不可以通过svn://方式访问档案库

anon-access = none

#登陆用户可读/写权限

auth-access = write

#设置密码文件为passwd

password-db = passwd

#设置权限分配文件为authz

authz-db = authz

#realm是你定义的名称,这告诉客户端连接的“认证命名空间

realm = My First Repository

2. 更改passwd文件:

#帐号 = 密码

admin = 123456

3. 更改authz文件,给予admin用户访问权限

[groups]

harry_and_sally = admin

[/]

@harry_and_sally = rw   #可读写权限

参考:http://wiki.ubuntu.org.cn/SubVersion#.E5.AE.89.E8.A3.85

FROM:http://zhtch-123.iteye.com/blog/1632715

一、安装SVN默认安装到/usr/local/bin下面

二、创建仓库 svnadmin create /home/svnrepo

/root/svnrepo为所创建仓库的路径,理论上可以是任何目录
三、修改配置文件/home/svnrepo/conf/svnserve.conf

 

代码
#去掉#[general]前面的#号
[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access = none
#认证用户的权限,可以是read,write,none,默认为write
auth-access = write
#密码数据库的路径,去掉前面的#
password-db = passwd

注意:所有的行都必须顶格,否则报错。
建议:为了防止不必要的错误,建议你直接用我上面的内容覆盖掉文件原来的内容

 

四、修改配置文件passwd。

代码
[users]
sxy = sxy

注意
1. 一定要去掉[users]前面的#,否则svn只能以匿名用户登录,客户端不会出现登录窗口,除非你的anon不为none,否则将返回一个错误。
2. 这里的密码都是没有加密的,我按照一些教程所说的用htpasswd生成的密码无法使用。

 

五、配置SVN xinetd启动方式:
在/etc/xinetd.d/下面新建svn文件
service svn
{
disable = no
port = 3690
socket_type = stream
protocol = tcp
wait = no
user = svn
server = /usr/local/bin/svnserve
server_args = -i -r /home/svn

}

重启xinetd   /etc/init.d/xinetd restart

六、停止SVN服务器:killall svnserve

七、启动SVN服务器

对于单个代码仓库

启动命令   svnserve -d -r /home/svn –listen-host 192.168.1.16
其中-d表示在后台运行,-r指定服务器的根目录,这样访问服务器时就可以直接用svn://服务器ip来访问了。如果服务器有多ip的话–listen-host来指定监听的ip地址.

我们可以在svn客户端中通过svn://192.168.1.16来访问svn服务器

对于多个代码仓库,我们在启动时也可以用-r选项来指定服务器根目录,但访问时需要写上每个仓库相对于svn根目录的相对路径.

比 如,我们有两个代码仓库/home/repo1 和/home/repo2,我们用svnserve -d -r /home –listen-host 192.168.1.16来启动,那么在客户端访问时可以用svn://192.168.1.16/repo1和svn: //192.168.1.16/repo2来分别访问两个项目

八、开放服务器端口

svn默认端口是3690,你需要在防火墙上开放这个端口。

/sbin/iptables -A INPUT -i eth0 -p tcp –dport 3690 -j ACCEPT

/sbin/service iptables save

你也可以通过svnserve的–listen-port选项来指定一个已经开放的其他端口,不过这样的话客户端使用也必须家上端口,如svn://192.168.1.200:9999/.
九、使用svn客户端导入项目

推荐使用客户端 http://tortoisesvn.tigris.org/

eclipse插件 http://subclipse.tigris.org/

 

 

Ubuntu 环境下SVN添加新项目

1、登陆到SVN服务器
帐号: ssh  test@192.168.1.100
密码: 123456

2、新建SVN项目
a、 进入svn创建项目的目录
cd /etc/apache2/mods-enabled/

b、 编辑文件

sudo vi dav_svn.conf
密码: 123456(即账户test的登录密码,下同)

c、 添加新项目(testsvn为例),在文件末尾添加以下代码

  1. <Location /testsvn>
  2.  DAV svn
  3.  SVNPath /home/fruits/svn/projects/code/testsvn
  4.  AuthType Basic
  5.  AuthName “Subversion repository”
  6.  AuthUserFile /etc/svn-auth-file
  7.  Require valid-user
  8. </Location>

3、新建项目(testsvn)资源库
sudo svnadmin create /home/fruits/svn/projects/code/testsvn
注:现在可以通过TortoiseSVN下载svn资源了,但还不能上传(因为用户没有写权限)

4、修改项目(testsvn)访问权限
sudo  chmod  777  -R   /home/fruits/svn/projects/code/testsvn
注: -R 递归设置testsvn文件夹下的所有权限为读+写+执行

5、验证创建svn项目(testsvn)是否成功
1) 从svn上下载testsvn到本地
利用 TortoiseSVN 工具,下载文件svn资源到本地(右键checkout),刚才新建testsvn项目的svn网址:
http://192.168.1.100/testsvn/
或  命令下载svn资源如下
svn   co   http://192.168.1.100/testsvn/    testsvn

2) 上传本地文件到svn上
a、 新建文件 aaa.txt, 输入:doodlemobile
b、 右键——》TortoiseSVN ——》Add… 
c、 右键——》 SVN Commit… ——》 输入更改记录,如:add aaa.txt
d、 打开浏览器,输入:http://192.168.1.100/testsvn/,查看是否上传成功!

6、常见问题

1) Could not open the requested SVN filesystem 错误

解决: 这是因为还没有创建项目资源库(testsvn),因此无法访问到此文件,解决方法请见上述步骤3

2) Permission denied 错误

解决: 这是用户没有写权限(无法上传文件),解决方法请见上述步骤4

 

参考推荐:
SVNForum

SVN常用命令(推荐)

ubuntu下SVN服务器安装配置 

Windows安装SVN服务器(百度文库)

Windows下安装Subversion服务端和TortoiseSVN客户端详细教程(百度文库)

FROM:http://blog.csdn.net/sunboy_2050/article/details/7930492

发表评论

电子邮件地址不会被公开。 必填项已用*标注