美文网首页
Mac 搭建SVN服务器 - 小记

Mac 搭建SVN服务器 - 小记

作者: LINGSHOW | 来源:发表于2018-02-06 14:01 被阅读95次

            小记Mac下搭建SVN服务器,现在没完成在其他Mac下访问自己搭建的SVN,往后实现了再做补充,如果有哪位大神已经弄好了,欢迎留言切磋!

    1、创建一个代码库

            svnadmin create ~/svn/myProject

    2、在finder打开创建的代码库

            /User/用户名/svn/myProject

    3、打开svnserver.conf,打开如下注释,并修改设置如下:

            anon-access = none

            auth-access = write

            password-db = passwd

            authz-db = authz

    4、配passwd文件

            在users下输入 : 用户名=密码(aaa=123)

    5、配置authz文件

              [groups]下面添加组名和用户名,添加用户(多个用户用","隔开)和设置用户权限(rw:可读可写)

            PS:rw 代表可读写,显然只读就是 r 了

    5.1、用户组前要用 @ 符号 

              @users = rw

    5.2、如果是用户,直接写用户名就可以了

                user1 = rw  回车 user2 = rw

                如果在用户前面添加了@ 会报(本文 7.4)错误信息

    6、启动SVN服务

               在终端输入: svnserve -d -r /User/用户名/SVN路径

                没有任何输出则启动成功

                在“活动监控器”可查看到svnserve进程在内存中。

    7、checkout  代码库SVN的内容

             在终端输入如下:

            svn checkout svn://localhost/ --username 用户名 --password 密码

            checkout 成功会提示:Checked out revision 版本号

            提示:7.1、'svn://192.168.0.151/SVN' doesn't exist

            是你所给的URL不存在,URL写到电脑IP就可以了

                    7.2、URL正确了,提示 Can't create directory '/Users/a123456/SVNTest/.svn': Permission denied

                    是你checkout的目的文件夹没有访问权限,

                    7.3、使用如下命令修改访问权限 (同时也要打开代码库svn的权限)

                    sudo chmod -R 777 SVNTest/

                    7.4、如果提示

                    Unable to connect to a repository at URL 'svn://localhost'

                    Invalid authz configuration

                    可能是配置文件错了(我这边报错是因为在authz配置文件中组名是users, 后面设置权限时写成user,少了个s)

    8、commit代码到SVN

                svn ci -m "提交信息"

                提示:

            8.1、Can't open file '/Users/a123456/SVN/db/txn-current-lock': Permission denied

                    是SVN权限没有开放,操作如下

                    使用如下命令修改SVN库下txn-current-lock的权限,db的权限也一起开放

                    sudo chmod -R 777 SVN/db

                    sudo chmod -R 777 SVN/db/txn-current-lock

    9、查找SVN路径url

            进入到checkout的代码文件,执行如下:

            svn info

    10、checkout冲突提示

                Select: (p) postpone, (r) mark resolved, (tf) their version,

                            (s) show all options:

                p :  拉取 上次更新的版本 和 其他人上传的版本,生成两个文件

                r:冲突已解决,放弃其他人上传的内容,使用自己现在的

                tf:放弃自己修改的内容,使用其他人的修改

                s:在终端展示这些选项的解析信息

    11、同一台设备同时创多个SVN服务器问题

            11.1、一个设备同时只能运行一个svnserve进程,所以无法同时开启多个SVN(自己瞎搞的)

            11.2、切换SVN代码库,关闭原先的svnserve进程,在目标SVN代码库文件下重新开启svnserve服务

            11.3、其他操作同上流程

    12、忽略SVN全局文件

            修改/用户名/.subversion/config文件

            打开 global 注释 ,并添加如下:

            global-ignores

            = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.pyc *.pyo *.rej .DS_Store

            *.xcuserstate *.xcworkspace *.xcuserdatad *.xcscmblueprint *~ #*# .#* .*.swp

    参考文献:

    1、Mac 搭建 SVN 服务器环境(原创)

    https://cnbin.github.io/blog/2015/06/13/mac-da-jian-svn-fu-wu-qi-huan-jing/

    2、出现Permission denied的解决办法

    http://blog.csdn.net/sinat_33363493/article/details/52734746

    3、安装SVN服务端(Subversion)解决的问题(如:url 'svn://192.168.1.123/src/' doesn't exist)

    http://blog.csdn.net/h_o_w_e/article/details/53465787

    4、SVN常用命令之checkout

    http://blog.csdn.net/gengxiaoming7/article/details/50512195

    5、SVN中文提示(错误提示总结)

    http://blog.csdn.net/zgmzyr/article/details/6567239

    相关文章

      网友评论

          本文标题:Mac 搭建SVN服务器 - 小记

          本文链接:https://www.haomeiwen.com/subject/ekokaxtx.html