采用了apache结合svn的方式。

首先安装apache、subversion、svn-apache

sudo apt-get install apache2
sudo apt-get install subversion
sudo apt-get install libapache2-svn

然后创建svn项目仓库

sudo mkdir /svn
sudo cp /etc/apache2/mods-enabled/dav_svn.conf /etc/apache2/mods-enabled/dav_svn.conf.orig
sudo vim /etc/apache2/mods-enabled/dav_svn.conf

编辑dav_svn.conf配置文件,内有注释,可以去掉前面的#使语句生效,内容如下

<Location /svn>
DAV svn
SVNParentPath /svn
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
</Location>

添加用户,然后系统会提示输入密码并确认

#首次创建需要加-c选项,并且需要后面加-m参数,同时可以增加一个svn用户
#执行该命令会提示为新用户admin设置密码
sudo htpasswd -c /etc/subversion/passwd admin #以后添加新用户,需要去掉-c选项,否则以前的用户就被覆灭了
sudo htpasswd /etc/subversion/passwd kkrimen

创建版本库

cd /svn
sudo svnadmin create firstrepo

确保你添加了/svn目录的读写权限给apache

sudo chown -R www-data:www-data /svn

重启apache2完成配置

sudo /etc/init.d/apache2 restart

如何要保证所有人的权限,则把前面conf文件下的SVNParentPath改成SVNPath

由于apache默认使用80端口,如果有别的应用也默认使用80端口,如nginx则会发生端口冲突

解决的办法是修改apache的监听端口

sudo vim /etc/apache2/ports.conf
NameVirtualHost *:80
Listen 3690 <IfModule mod_ssl.c>
# If you add NameVirtualHost *:443 here, you will also have to change
# the VirtualHost statement in /etc/apache2/sites-available/default-ssl
# to <VirtualHost *:443>
# Server Name Indication for SSL named virtual hosts is currently not
# supported by MSIE on Windows XP.
Listen 443
</IfModule> <IfModule mod_gnutls.c>
Listen 443
</IfModule>

改变上面Listen后面的端口号为自己想要的端口,这里我是3690,然后在重新启动apache

sudo /etc/init.d/apache2 restart

最新文章

  1. JVM内存模型和性能优化 转
  2. C语言内存对齐详解(2)
  3. jQuery插件开发全解析
  4. MATLAB 编程风格指南及注意事项
  5. EMVTag系列7《静态签名数据》
  6. SQL SERVER NULL值和连接注意问题
  7. Centos6.4安装Mono和MonoDevelop
  8. JAVA-应用easyui
  9. 初学HTML5系列一:简单介绍
  10. Android之SplashActivity的巧妙之处
  11. asp.net core 使用 Redis 和 Protobuf
  12. 工作经常使用的SQL整理
  13. 实战JAVA虚拟机 JVM故障诊断与性能优化 pdf
  14. Python 上下文管理器和else块
  15. Linux学习历程——Centos 7 chown命令
  16. React Native基础&amp;入门教程:以一个To Do List小例子,看props和state
  17. Rhino学习教程——1.3
  18. JS效果
  19. 【洛谷】【计数原理+Floyed】P1037 产生数
  20. (转)IBM mq基本使用

热门文章

  1. C# 线程间不能调用剪切板的问题
  2. Linux软连接和硬链接(转)
  3. Android getevent用法详解
  4. linux(centos)下安装ffmpeg
  5. 关于cookie你不知道的
  6. 从C++Primer某习题出发,谈谈C语言标准I/O的缓存问题
  7. linux安装oracle12c
  8. Java Scanner 类,获取用户输入的值
  9. Velocity基本常用语法
  10. 详解AJAX核心中的XMLHttpRequest对象