Subversion在MacOS系统已经默认安装,用户可以直接使用。本文主要介绍在Mac系统上SVN的一些基本
使用配置。
验证SVN是否已经存在
svn --version已经安装了Svn,则会输入当前版本信息:svn, version 1.9.4 (r1740329)compiled Feb 27 2017, 18:16:16 on x86_64-apple-darwin15.0.0......1. 创建Svn存储库
第一步:创建Svn的存储库目录
mkdir repositorycd repositorymkdir repo_appcd repo_apppwd输出: /Users/master/Documents/work/repository/repo_app说明:repository: 该文件夹是Svn存储库基础路径,其下可以创建多个存储库repo_app: 是我们用来存在app类应用的存储库,同样,用户可以再创建其他的存储库
第二步:创建存储库
svnadmin create /Users/master/Documents/work/repository/repo_app创建完成后,将会在 “repo_app" 目录下自动创建一系列配置文件,结构如下所示:
2. 配置用户权限
2.1 修改主配置文件:svnserve.conf文件路径/Users/master/Documents/work/repository/repo_app/conf/svnserve.conf修改如下配置项:anon-access = noneauth-access = writepassword-db = passwdauthz-db = authz
2.2 修改密码配置文件:password文件路径/Users/master/Documents/work/repository/repo_app/conf/password在[users]配置项下面添加用户和密码:admin = admin2.3 修改用户组配置文件:authz配置文件路径:/Users/master/Documents/work/repository/repo_app/conf/authz在authz文件中添加:
设置用户admin的权限为对所有数据具有读写权限。3. 启动SVN3.1 启动典型的启动命令如下所示:svn -d --listen-port=port --listen-host=host -r /Users/master/Documents/work/repository参数说明:-d: 表示以后台进程启动Svn--listen-port:指定Svn服务的监听端口,默认为 3690--listen-host:指定主机名-r: 指定Svn服务监听的目录,服务启动后会暴露该目录下的存储库本文中使用如下命令启动Svn:svnserve -d -r /Users/master/Documents/work/repository/repo_app如上命令表示,Svn服务将作为独立后台进程启动,并且,Svn服务自动监听的仓库为repo_app。由此,开发人员可以向repo_app存储仓库下导入代码或文档。3.2 验证启动是否成功通过lsof命令查看3690端口的占用情况:
如上表述,svserve进程已经坚挺在3690端口,表示Svn服务正常启动。4. 初始化代码库初始化仓库:
注意:
5. 客户端Checkout代码
代码迁出命令:svn checkout svn://localhost/cmm ./cmm --username=admin --password=admin6. 客户端提交代码将未处于版本控制的文件添加到Svn的版本控制中:svn add 文件或文件夹提交代码:svn commit -m"Commit your changeset"7. 客户端更新代码客户端从服务器端拉取最新的代码到本地工作空间:svn update8. 如何创建多仓库?一般情况下,开发人员会在公司局域网内搭建自己的Svn服务器,用于对项目进行集中式管理。研发团队一般会存在多个项目,基于Svn做配置管理,建议的策略是:每个项目都建立自己的项目仓库那么,如何在一台服务器上建立多个仓库呢?如下通过实例进行说明。假设目前需要建立两个仓库:
如果需要维护多个仓库,则启动Svn时通过“-r”参数置顶多个仓库的公共父级目录,如下所示:svnserve -d -r /Users/master/Documents/work/repository通过如上命令,指定了Svn服务监控的目录为 “/Users/master/Documents/work/repository”两个仓库的访问地址是:svn://localhost/auto-di //相对路径 auto-disvn://localhost/cmm //相对路径 cmm
领取专属 10元无门槛券
私享最新 技术干货