1.首先检查安装
检查曾今是否已经安装过svn
svn
如果显示为下图则说明你还没有安装
显示为如下,则说明你已经安装了svn
2.安装svn
安装之前可以更新一下 检查软件最新
apt-get update
安装
apt-get install subversion
3.创建目录和资源库文件夹
创建svn目录
mkdir /opt/svn
创建资源库文件夹
mkdir /opt/svn/repository
记得更改资源库的权限,否则后期会因为权限问题无法访问资源
chmod 777 /opt/svn/repository
初始化资源库内容
svnadmin create /opt/svn/repository
系统会自动创建相关文件夹
conf 配置目录
db 代码存放的库
修改db目录的权限
chmod -R 777 /opt/svn/repository/db
4.配置相关权限
配置用户(匿名,权限用户)读写权限,权限用户的用户名,密码,权限文件等配置
进入conf配置目录
cd conf
进入svnserve.conf文件,添加如下修改
#匿名用户可读
anon-access = read(可改成none,即不可读)
#权限用户可写
auth-access = write
#密码文件为passwd
password-db = passwd
#权限文件为authz
authz-db = authz
(去掉前面的#,并且顶格,否则可能会报错)
进入passwd文件 在
[users]
# harry = harryssecret
# sally = sallyssecret
后面添加 “用户名 = 密码” 配置
jack = root
进入authz文件添加组权限
[groups]
[/]
jack = rw
//让jack用户拥有/目录下所有内容的rw权限
//所以我们也可以配置[/]路径,让用户只拥有一部分资源的权限
5、测试SVN服务器安装
启动服务
svnserve -d -r /opt/svn/repository
(-d:表示在后台运行 ,-r:指定服务器的根目录)
命令查看svnserve是否已经运行
ps aux | grep svnserve
停止服务
1. 彻底杀死进程
kill -9 xxxx
2.killall svnserve
6.使用
eclipse -》用户proj --》team--》Share Project
输入svn版本库资源路径 svn://server ip address
例如我的就是: svn://192.168.28.130/
后面你就一路next or finish, 完了之后就重新 用户proj --》team --》commit
补充卸载svn
apt-get remove --purge subversion
(–purge 选项表示彻底删除改软件和相关文件)
冲突解决:
一般svn的冲突来源于版本不一致导致内容冲突。
我们需要先update代码,找到是那些内容产生了冲突!然后对于冲突内容会有三个文件产生,内容一致版本,别人在你提交之前的版本,你当前内容的版本!你需要对比三个文件,手动解决冲突(merge内容),之后就resolve!resolve之后就只会保留一个可以commit的merge版本!此时你终于可以commit代码到svn!
不再跟踪:
右键—tortoiseSVN--unversion add to ignore list (然后选中你不再跟踪的文件)
提交不再跟踪的内容!
添加跟踪内容:
在需要跟踪的内容上 右键—tortoiseSVN--add
提交跟踪的内容!