当前位置: 首页 > 工具软件 > WebSVN > 使用案例 >

debian配置openssh和SVN+websvn(备忘)

古弘
2023-12-01

1. 配置ssh服务

为了方便远程操作debian系统,安装ssh服务。

#apt-get install ssh

#vi /etc/ssh/sshd_config

我只需要用户名、密码登录方式,所以我只需修改:

line 52: #PasswordAuthentication yes

去掉#,使密码认证放开,其他配置默认,此时就可以ssh登录了。

#/etc/init.d/ssh restart

windows可以使用secureCRT的ssh登录;

linux使用命令:ssh user@192.168.1.50

2.配置SVN

首先安装subversion、apache2、libapache2-svn

#apt-get install subversion

#apt-get install apache2

#apt-get install libapache2-svn

在/home下创建一个svn仓库:

#mkdir svn

#svnadmin create repos

$mkdir -p testdemo/trunk

$mkdir testdemo/branch

$mkdir testdemo/tags

#svn import testdemo file:///home/svn/respo/testdemo -m "initial import"

在apache2中增加svn模块,只需在原有的格式上添加自己需要的路径与需要的功能

#vi /etc/apapche/mod-available/dav_svn.conf

  1. <Location /svn>  
  2. DAV svn  
  3. SVNPath /home/svn/repos
  4. AuthType Basic  
  5. AuthName "myproject subversion repository"  
  6. AuthUserFile /home/svn/repos/conf/passwd
  7. AuthzSVNAccessFile /home/svn/repos/conf/authz  #svn用户访问权限控制文件
  8. Require valid-user  
  9. </Location>  

添加用户和和密码:

$cd /home/svn/repos/conf

#htpasswd -c passwd user1        //-c 表示第一次覆盖原有文件

#htpasswd passwd user2           //之后不再需要-c

#htpasswd passwd admin           //之后不再需要-c

#htpasswd passwd read           //之后不再需要-c

为用户加访问权限,以下是我的配置:admin用户拥有整个仓库的读写权,develop拥有testdemo项目的整个读写权,test拥有testdemo/trunk的只读权。

#vi authz

[group]

Admin = admin

Develop = user1,user2

Test = read

[/]

@Admin=rw


[/testdemo]

@Develop=rw


[/testdemo/trunk]

@Test=r

到此svn仓库的用户与访问权已经配置好了,且能利用http网页访问。

#/etc/init.d/apache2 restart

此时测试一下:

$svn co http://192.168.1.50/svn/testdemo --username=user1 --password=*********

注意各个用户的权限可以都试一下,是否是按照自己的想法正确配置了。还有可能会弹框,但是不用管cancel就行了。

打开浏览器,输入:192.168.1.50/svn              //这里也需要注意,符合权限的用户才能正确访问到

3.websvn安装

有时我们想要快速查看code,但是code太大,check下来比较慢,此时就可以用websvn很容易读code。

首先在/etc/apache2/建立conf.d文件夹,因为这个文件夹是websvn安装时创立链接的目的目录,没有会出错。

#mkdir conf.d

#apt-get install websvn

中途会弹出是否马上配置弹框,选择是。svn仓库的路径填写上面你自己的路径,比如我的路径为/home/svn/repos。

安装完成后在apache2.conf中包含conf.d内的配置文件。

line 217: IncludeOptional  conf.d/*

#/etc/init.d/apache2 restart

到此websvn就配置完成了。

测试一下,在浏览器中输入:192.168.1.50/websvn

这时就可以看到/home/svn/repos下的所有项目的code。

 类似资料: