Subversion的官方网站是:http://subversion.tigris.org/
SVN简介
SVN(Subversion)是一个自由、开源的项目源代码版本控制工具。目前,绝大多数开源软件和企业代码管理,都使用SVN作为代码版本管理软件。
1.安装命令:sudo apt-get installsubversion
SVN服务器端
2. 创建项目目录:
mkdir /home/svn
mkdir /home/svn/project
cd /home/svn/
sudo chmod -R 777 project/
3. 创建svn仓库 命令行输入svnadmin create /home/svn/project, 会在project目录生成相关文件
4. 设置访问权限,打开/home/svn/project/conf/svnserve.conf:
把“# anon-access = read”改为“anon-access = none”, 即禁止无帐号访问
把“# auth-access = write”改为“auth-access = write”,即设置验证用户可以写
把“# password-db = passwd”改为“password-db = passwd”,即设置密码配置文件为passwd
打开/home/svn/project/conf/passwd,添加llx = 123456,即用户名:llx,密码为:123456
打开/home/svn/project/conf/authz,在[groups]后添加admin = llx,即用户llx属于admin组
继续添加以下三行(表示admin组的用户对svn仓库的根目录【/】有读写权限):
[/]
@admin = rw
* =
5. 启动服务,每次重新开机执行svnserve -d -r /home/svn
-d 表示svnserver以“守护”进程模式运行
-r 指定文件系统的根位置,这样客户端不用输入全路径,就可以访问版本库; 如:svn://192.168.1.3/project
SVN客户端
检出 :sudo svn co http://47.105.157.158/svn/citc/iot-mqtt/trunk /destination(文件夹名)
提交 :进入需要更新的目录,输入命令:svn commit -m path-to-commit,其中path-to-commit可以为空,成功后会提示更新后的版本号。
更新 :svn update,在要更新的目录运行这个命令就可以了。
查看日志:svn log path
查看文件或者目录状态 :
svn status path
(目录下的文件和子目录的状态,正常状态不显示) svn status -v path
(显示文件和子目录状态)
简写: svn st
往版本库中添加新的文件 :
svn add file (
file :要添加的文件名)
版本库中删除的文件(慎用) svn delete path -m file
或使用 svn delete path file --force
可以删除刚刚添加但是没有commit的文件。
简写: svn (del, remove, rm)
将改动的文件提交到版本库 :svn commit -m “LogMessage” [-N] [--no-unlock] path
(如果选择了保持锁,就使用–no-unlock开关)
简写: svn ci
更新到某个版本 :
svn update -r m path
查看日志 :svn log path
svn log -l 20 //输出最近20条信息
svn log -q //只输出版本号、时间、作者 而不输出日志
svn log --xml //让日志以xml形式输出,可二次利用
查看文件详细信息 :
svn info path
比较差异 :svn diff path
(将修改的文件与基础版本比较) svn diff -r m:n path
(对版本m和版本n比较差异)
简写: svn di
将两个版本之间的差异合并到当前文件 :svn merge -r m:n path
SVN获取url信息 :svn info | grep URL
svn info
SVN 帮助 :svn help
svn help ci