博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mac使用svn
阅读量:6963 次
发布时间:2019-06-27

本文共 2539 字,大约阅读时间需要 8 分钟。

最近使用的是Mac进行开发,由于常年使用windows系统熟悉习惯了Windows的一些操作方式,突然改用IOS操作系统,一下子有些转换不过来。

开发过程中免不了要用到svn、git等项目管理工具,以下是我在Mac上使用svn时遇到的一些坑,现在总结如下:

  • Mac电脑上自带svn,通过svn --version检查svn版本信息。如果没有,可以通过安装xcode的方式获得svn。xcode上自带svn工具。

xcode安装方式:

1、打开终端Terminal,输入:xcode-select --install,点击回车,安装即可
2、登录 然后下载 dmg 安装

  • 接下来就是使用svn

一、创建代码仓库,用来存储客户端上所传代码

/Users/用户名目录下创建一个新的NewSVN目录,里面可以创建多个仓库目录

注意:文中AppleID均为电脑用户名

打开终端,创建一个Perjects仓库,输入命令:svnadmin create /User/AppleID/NewSVN/svnInfo()

指令执行成功后,硬盘上多了一个/User/AppleID/NewSVN/Projects目录

clipboard.png

二、修改svn配置权限

主要是修改conf文件夹下面的三个文件

1. 打开svnserve.conf,将下面配置项前的#和空格都去掉

# anon-access = read# auth-access = write# password-db = passwd# authz-db = authz
  • anon-access = read代表匿名访问的时候是只读的,如果改为 anon-access=none代表的是禁止匿名访问,需要账号密码才能访问

2. 打开password,在[users]下面添加账号和密码

# harry = [harrylist] ,# 表示此行为注释行,前面代码表示的账号和密码的命名格式,其实就是[账号] = [密码]

admin = 123456  // 账号是admin,密码是123456

3. 打开authz,配置用户组合权限

可以将在password里的用户分配到不同的用户组里。以后就可以对不同用户组设置不同的权限,没有必要对每个用户进行单独设置权限。

在[groups]下面添加组名和用户名,多个用户之间用逗号隔开
如下:

[groups]groups1 = admin, user// 表示admin和user都是groups1这个组的

接下来再进行权限配置:

[/]:表示svn服务器中的所有资源库

[/]@groups1 = rw// 表示groups1这个组中的所有用户对所有资源库都有读写(rw)权限,组名前面要用@,如果是用户名,不用@。例如admin这个用户有读写权限直接写 admin=rw

4. 启动svn服务器

前面3步的配置都是基于svn服务器正常启动,如果启动不了,前面的工作均不起作用

在终端输入命令:svnserve -d -r /Users/AppleID/NewSVN
或者输入:svnserve -d -r /Users/AppleID/NewSVN/Projects
点击回车后,如果没有任何提示,说明启动成功了

5. 关闭svn服务器

打开实用工具里面的“活动监视器”,选择退出即可

注:首次配置完成后先关闭svn服务器再进行数据的上传和下载操作

三、使用svn客户端功能

1、从本地导入代码到服务器(第一次初始化导入)

在终端中输入:
svn import /Users/AppleID/NewSVN/Projects/demo1 svn://localhost/mycode/demo --username=admin --password=123456 -m "初始化导入"
上面的命令指的是:将/Users/AppleID/NewSVN/Projects/demo1中的所有内容上传到服务器mycode仓库的demo目录下,后面双引号中的"初始化导入"是注释

2、从服务器上下载代码到客户端本地

在终端中输入:
svn checkout svn://localhost/mycode --username=admin --password=12345 /Users/AppleID/NewSVN/Projects
上面的代码表示的是:将服务器中mycode仓库中的文件下载到/Users/AppleID/NewSVN/Projects目录中

localhost是本地服务器IP地址,当和别人用同一个svn时,可以输入你要进行数据请求的数据修改到服务器

3、提交更改过的代码到服务器

在步骤2中已经将服务器端的代码都下载到/Users/AppleID/NewSVN/Projects目录中,下载修改下面的一些代码,然后提交这些修改到服务器:
1)/Users/AppleID/NewSVN/Projects目录,输入:cd /Users/AppleID/NewSVN/Projects
2)输入提交指令:svn commit -m "修改了main.html文件"
这个指令会将/Users/AppleID/NewSVN/Projects下的所有修改都同步到服务器端,如果这次只修改了main.html文件,可以看到终端的打印信息:
Sending demo1/demo/main.html
Transmitting file data .
Committed revision 2.

4、更新服务器端的代码到客户端

在终端中定位到客户端代码目录后,如上面的/Users/AppleID/NewSVN/Projects目录,再输入指令:svn update

这些都是svn的基本用法,还有其他用法,可以在终端输入:svn help

**1、系统自带的svn无法支持本地删除文件的更新,即当本地删除文件后再去更新服务器的文件时,删除的文件又从服务器上的文件夹中下载到本地文件夹中,但是他支持文件修改后的更新操作

2、一定要写注释,不然系统不会识别命令
**

以上,文章至此告一段落。

文章摘自:

转载地址:http://eawsl.baihongyu.com/

你可能感兴趣的文章
jenkins+docker+nodejs项目的自动部署环境
查看>>
网游高层离职潮例行上演:多数选择创业
查看>>
赛门铁克 BE12.5备份exchange 2010 dag问题
查看>>
如何在Root的手机上开启ViewServer,使得HierachyViewer能够连接
查看>>
mysql 导出数据
查看>>
2014-10-10 LAMP第一部分-环境搭建
查看>>
iPhone 4S
查看>>
Attribute listkey invalid for tag checkboxlist according to TLD
查看>>
IOS 的UINavigatonBar控件的titleTextAttributes的字典类型的属性
查看>>
项目实现
查看>>
查看linux系统版本是32位的还是64位的
查看>>
The Little Prince-12/09
查看>>
ios数据存储4种
查看>>
统计字符串在文件中出现的次数
查看>>
QtCreator源码分析(一)——QtCreator源码简介
查看>>
Java基础学习总结(9)——this关键字
查看>>
Enum简单例子DropdownList
查看>>
c#导出bugfree3.0的数据到禅道
查看>>
SpringMVC权限管理
查看>>
Java Web学习总结(18)——JSP标签
查看>>