介绍subversion自带的服务器(svnserve),实现从远程计算机访问你的项目检出和提交代码。
主要介绍: 启动subversion服务器(svnserve)
首先,需要启动subversion服务器。执行下面命令的时候,请输入project1的绝对路径。
复制代码代码示例:
sudo svnserve -d -r /home/demo/repository
这样就可以通过默认端口3690,在远程访问到project1的版本库。
iptables配置
复制代码代码示例:
sudo nano /etc/iptables.test.rules
添加防火规则:
复制代码代码示例:
# Allows svnserve connections from anywhere
-A INPUT -p tcp --dport 3690 -j ACCEPT
赋予root的权限:
复制代码代码示例:
sudo -i
激活防火规则:
复制代码代码示例:
iptables-restore< /etc/iptables.test.rules
检测规则是否配上去了:
复制代码代码示例:
iptables -L
...
复制代码代码示例:
iptables-save > /etc/iptables.up.rules
... exit
检出(checkout)版本库
复制代码代码示例:
svn co svn://192.168.1.118/project1
配置svnserve的权限
需要编辑svnserve的配置文件:
复制代码代码示例:
sudo nano /home/demo/repository/conf/svnserve.conf
首先,发现很多都是注释掉的,编辑:
复制代码代码示例:
# svnserve configuration
[general] password-db = /home/demo/repository/conf/passwd anon-access = read auth-access = write realm = Project1
这个设置是不想让匿名用户访问你的project1:
复制代码代码示例:
anon-access = none
再次打开passwd 文件:
复制代码代码示例:
sudo nano /home/demo/repository/conf/passwd
输入用户名和密码:
复制代码代码示例:
[users]
project1admin = mypassword
远程提交(remote commit)
复制代码代码示例:
mkdir goodbye
svn add goodbye ... svn commit -m "Added goodbye folder" --username project1admin
输入刚才设置的密码,输出结果:
复制代码代码示例:
svn commit -m "Added goodbye folder" --username project1admin
Authentication realm: <svn://192.168.1.118:3690> Project1 Password for 'project1admin': Adding trunk/goodbye Committed revision 4. svnserve的选项
查看更多svnserve的选项,请输入:
复制代码代码示例:
sudo svnserve --help
修改svnserve访问的端口:
复制代码代码示例:
sudo svnserve -d -r --listen-port 2122 /home/demo/repository
或者只影响特定的IP:
复制代码代码示例:
sudo svnserve -d -r --listen-host 192.168.1.118 /home/demo/repository
这个配置当你有一个固定IP地址的时候可以这样作。 开机重启自动启动svnserve
在机器启动的时候自动开启svnserve,添加下面crontab:
复制代码代码示例:
crontab -e
@reboot svnserve -d -r /home/demo/repository svn的安全性 (责任编辑:IT) |