天天看点

Mac命令行创建本地svn服务器

最近自己弄了一下svn,顺手写个总结供大家参考。。。。

因为在Mac环境下,系统自带svn功能,比windows方便了很多。话不多说瞅就完了↓↓↓↓↓。

          • 一、配置环境变量。
            • 方法一
            • 方法二
            • 方法三
          • 二、svn服务器建立
            • 1.创建代码仓库,存储要上传的代码。
            • 2.配置svn的用户权限
            • 3.启动svn服务器
            • 4.关闭svn服务器
          • 三、使用svn客户端功能
            • 1.从本地导入代码到服务器(第一次初始化导入)
            • 2.拉取上传项目
一、配置环境变量。

如果在这之前没有配置过的话,要先行配置环境变量。↓

方法一

由于我使用的终端是zsh,所以手动配置的话是

sudo vim ~/.zshrc
           

这里会提示输入密码,正常输入开机密码就好,然后在打开的文件里面添加下面这句话

export PATH= /usr/local/svn/bin : ${PATH}

或者

export PATH=$ {PATH} :/usr/local/svn/bin

注: /usr/local/svn/bin 这个是我电脑安装svn的位置。具体可用 which svn 查看你电脑svn安装的位置。

方法二

使用svn时使用全路径。比如查看svnserver --version,在不配置环境变量的情况下可以使用如下方法:

搜索出svnserver后直接点按拉到终端里即可用。

Mac命令行创建本地svn服务器

方法三

个人建议使用homebrew来安装(更新)svn。只是这个过程稍微慢一点,大概也就十几分钟左右。

终端输入:

#brew install svn

注:我个人使用的是这个方法,如果有使用第二种全路径的朋友请把后文提到的svnserver、svnadmin等命令自动换成[方法二]

二、svn服务器建立

1.创建代码仓库,存储要上传的代码。

先在新建一个svn目录(可以在svn目录下创建多个仓库目录)。我这是演示,所以直接在桌面上创建的(localsvn),见谅见谅。

Mac命令行创建本地svn服务器

然后执行#svnadmin create ./,如果成功,结果如下会有红框里的文件:

Mac命令行创建本地svn服务器

2.配置svn的用户权限

主要修改上图的conf文件夹里的文件

Mac命令行创建本地svn服务器

a. 打开svnserve.conf,将下列配置项前面的#和空格都去掉(空格一定要去掉,否则最后导入项目的时候回报错)

Mac命令行创建本地svn服务器

注:anon-access:控制非鉴权用户访问版本库的权限,取值范围为"write"、“read"和"none”。默认是read,如果要查看svn日志的话要改成none

b. 打开passwd,在[users]下面添加帐号和密码。

svn账号:a

密码:111

Mac命令行创建本地svn服务器

c. 打开authz,配置用户组和权限

  1. 蓝色框 [groups] 下面添加组名(users)和用户名(a),如果有多个用户之间用逗号 , 隔开
  2. 红色框中的 [/]:代表svn服务器中的所有资源库。如果想要更细致的权限控制就再精确到的某一文件夹比如 [/test](这是给svn服务器的test文件夹赋权限)
  3. 红色框的 users 因为是用户组名,所以给用户组添加权限时,要在前面添加@。如果直接给用户赋权限直接:a=rw
Mac命令行创建本地svn服务器

3.启动svn服务器

Mac命令行创建本地svn服务器
svnserve -d -r ./
           

没有别的提示就是启动成功了。可以在活动监视器里看到:↓

Mac命令行创建本地svn服务器

4.关闭svn服务器

Mac命令行创建本地svn服务器
三、使用svn客户端功能

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

然后会提示让你输入用户名及密码。或者使用一下命令:

注:/Users/phy/Desktop/swift/XC:是我本地项目的路径(即要上传svn服务器项目的路径)

Mac命令行创建本地svn服务器

2.拉取上传项目

在桌面上创建一个upsvn文件夹,然后把刚传上的项目up到这个文件夹下

Mac命令行创建本地svn服务器

查看上传日志

Mac命令行创建本地svn服务器
Mac命令行创建本地svn服务器

ok,完结。。。个人经历总结,不完美不全面处,请不吝指正,感谢!!!!

继续阅读