mac 上搭建SVN
copy from 广东小码哥,M了个J。
在Windows环境中,我们一般使用TortoiseSVN来搭建svn环境。在Mac环境下,由于Mac自带了svn的服务器端和客户端功能,所以我们可以在不装任何第三方软件的前提下使用svn功能,不过还需做一下简单的配置。
我们首先来看下,如何在Mac环境下搭建svn服务器端环境。
创建代码仓库,用来存储客户端所上传的代码
我先在/User/apple目录下新建一个svn目录,以后可以在svn目录下创建多个仓库目录
打开终端,创建一个mycode仓库,输入指令:svnadmin create /Users/apple/svn/mycode
指令执行成功后,会发现硬盘上多了个/Users/apple/svn/mycode目录,目录结构如下:

配置svn的用户权限
主要是修改/svn/mycode/conf目录下的三个文件
1.打开svnserve.conf,将下列配置项前面的#和空格都去掉
# anon-access = read
# auth-access = write
# password-db = passwd
# authz-db = authz
anon-access = read代表匿名访问的时候是只读的,若改为anon-access = none代表禁止匿名访问,需要帐号密码才能访问
2.打开passwd,在[users]下面添加帐号和密码,比如:
- [users]
- mj = 123
- jj = 456
帐号是mj,密码是123
3.打开authz,配置用户组和权限
我们可以将在passwd里添加的用户分配到不同的用户组里,以后的话,就可以对不同用户组设置不同的权限,没有必要对每个用户进行单独设置权限。
在[groups]下面添加组名和用户名,多个用户之间用逗号(,)隔开
- [groups]
- topgroup=mj,jj
说明mj和jj都是属于topgroup这个组的,接下来再进行权限配置。
使用[/]代表svn服务器中的所有资源库
- [/]
- @topgroup = rw
上面的配置说明topgroup这个组中的所有用户对所有资源库都有读写(rw)权限,组名前面要用@
如果是用户名,不用加@,比如mj这个用户有读写权限
- [/]
- mj = rw
至于其他精细的权限控制,可以参考authz文件中的其他内容
4.启动svn服务器
前面配置了这么多,最关键还是看能否正常启动服务器,若启动不来,前面做再多工作也是徒劳。
在终端输入下列指令:svnserve -d -r /Users/apple/svn
或者输入:svnserve -d -r /Users/apple/svn/mycode
没有任何提示就说明启动成功了
5.关闭svn服务器
如果你想要关闭svn服务器,最有效的办法是打开实用工具里面的“活动监视器”

综合上述,我们就可以轻松搭建svn服务器环境了
使用svn客户端功能
1.从本地导入代码到服务器(第一次初始化导入)
在终端中输入
svn import /Users/apple/Documents/eclipse_workspace/weibo svn://localhost/mycode/weibo --username=mj --password=123 -m "初始化导入"
我解释下指令的意思:将/Users/apple/Documents/eclipse_workspace/weibo中的所有内容,上传到服务器mycode仓库的weibo目录下,后面双引号中的"初始化导入"是注释
2.从服务器端下载代码到客户端本地
在终端中输入svn checkout svn://localhost/mycode --username=mj --password=123 /Users/apple/Documents/code
我解释下指令的意思:将服务器中mycode仓库的内容下载到/Users/apple/Documents/code目录中
3.提交更改过的代码到服务器
在步骤2中已经将服务器端的代码都下载到/Users/apple/Documents/code目录中,现在修改下里面的一些代码,然后提交这些修改到服务器
1> 打开终端,先定位到/Users/apple/Documents/code目录,输入:cd/Users/apple/Documents/code
2> 输入提交指令:svn commit -m "修改了main.m文件"
这个指令会将/Users/apple/Documents/code下的所有修改都同步到服务器端,假如这次我只修改了main.文件
可以看到终端的打印信息:
- Sending weibo/weibo/main.m
- Transmitting file data .
- Committed revision 2.
4.更新服务器端的代码到客户端
这个应该是最简单的指令了,在终端中定位到客户端代码目录后,比如上面的/Users/apple/Documents/code目录,然后再输入指令:svn
update
5.至于svn的其他用法,可以在终端输入:svn help

这里列出一大堆svn指令,后面括号中的内容的一般代表着指令的简称,比如我们可以用svn ci代替svn commit,用svn co代替svn checkout
mac 上搭建SVN的更多相关文章
- mac上搭建svn服务器
1.terminal 执行svnadmin create 库地址/库名,生成的即为svn库根地址. 2.修改对应目录下conf/svnserve.conf文件: anon-access = read ...
- 转:Mac下搭建svn服务器和XCode配置svn
Mac下搭建svn服务器和XCode配置svn 先打开命令行终端. 1.创建svn repository svnadmin create /yourpath/svnroot/repository 2. ...
- Linux(Centos)系统上搭建SVN以及常见错误解答
本文主要介绍怎样在Centos上搭建SVN,文章内容比较基础,适合小白用户学习. 1.Linux版本Centos 6.5 查看linux版本命令: cat /etc/issue 2.查看本机上是否已经 ...
- 在MAC上搭建cordova3.4.0的IOS和android开发环境
Hello,大家好,今天给大家说说在mac上搭建cordova3.4.0的iOS和Android开发环境,首先下载cordova,地址:https://cordova.apache.org/#down ...
- 1、在MAC上搭建React Native开发环境
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...
- Mac上搭建直播服务器Nginx+rtmp
简介 nginx是非常优秀的开源服务器,用它来做hls或者rtmp流媒体服务器是非常不错的选择,本人在网上整理了安装流程,分享给大家并且作备忘. 步骤安装 1.安装Homebrow Homebrew简 ...
- 在路由器上搭建SVN服务器
在路由器上搭建SVN服务器 SVN托管服务大家都不陌生了,我最早开始用的是谷歌提供的SVN,因为在上面托管的项目都是开源的,所以当有些项目不方便在网上公开的时候,就需要自己搭建SVN服务器了.wind ...
- mac上搭建appium+IOS自动化测试环境(一)
阅读须知 由于OS X系统最近才开始接触,所以有些东西也不是很清楚,这里只提供方法不提供原理,能解释清楚的我也会尽量解释.可能也有一些地方说的不严谨或有错的,还望大家指点一二. 实验环境 操作系统: ...
- 在Mac上搭建React Native开发环境
概述 前面我们介绍过在window环境下开发React Native项目,今天说说怎么在mac上搭建一个RN的开发环境. 配置mac开发环境 基本环境安装 1.先安装Homebrew:用于安装Node ...
随机推荐
- python读取word表格内容(1)
1.首页介绍下word表格内容,实例如下: 每两个表格后面是一个合并的单元格
- Linux中的盘符问题
在windows 中像 C.D.E.F这些都可以当盘符,就是说对应了我们所看到的C盘,D盘,E盘,F盘.然而是不是只能加26个硬盘了呢? 盘符到硬盘也只是一个对映关系,我们也是可以建立从一个文件夹到一 ...
- 基于纯Java代码的Spring容器和Web容器零配置的思考和实现(3) - 使用配置
经过<基于纯Java代码的Spring容器和Web容器零配置的思考和实现(1) - 数据源与事务管理>和<基于纯Java代码的Spring容器和Web容器零配置的思考和实现(2) - ...
- 害人的VS2008,manifest导致“应用程序配置不正确,应用程序未能启动”
在VC++2008的项目中,如何显示地指定要使用的C++库的版本? 开发环境:VS2008 SP1 + Win2003 SP2 因为我的VS2008安装了SP1补丁,所以有了9.0.3 ...
- Is it possible to implement a Firebug-like “inspect element” DOM element highlighter with client-side JavaScript?
Is it possible to implement a Firebug-like "inspect element" DOM element highlighter with ...
- Android animation学习笔记之view/drawable animation
前一章中总结了android animation中property animation的知识和用法,这一章总结View animation和Drawable animation的有关知识: View ...
- gdbserver 安卓apk
gdbserver 调试程序 底层调用c/c++ 动态库, 动态库带调试选项 查看手机IP 192.168.1.177 包所调用的c/c++ 库是在/data/data/包名/lib/ 下 1.将安 ...
- Android 标签控件
版本号:1.0 日期:2014.7.24 版权:© 2014 kince 转载注明出处 在有的应用中可能须要设置一些标签来方便用去去查询某些信息,比方手机助手或者购物软件之类都会有一些标签. ...
- BaseAdapter使listview设置不同背景图片并添加selector
前段时间为了实现根据item不同的内容实现不同的背景色google了好久只找到了个隔行换色,通过自定义SimpleAdapter终于实现了此功能,但是定义了selector并没有触发点击效果.今天重新 ...
- 非线性规划问题的matlab求解
函数:[x, fval] = fmincon(FUN, X0, A, B, Aeq, Beq, LB, UB, NONLCON) 返回的x:是一个向量——在取得目标函数最小时各个xi的取值: 返回的f ...