SVN创建代码库,配置文件,添加用户名权限等

1、创建SVN代码库,我是在home的目录下创建的SVN代码库,自己也可以根据自己的习惯创建到其他目录下
输入命令:

  1. svnadmin create /home/svn

image.png

2、在仓库的conf目录下可以看到四个文件,下面对这四个文件进行说明:
authz 是权限控制的文件
hooks-env.tmpl 是用它来从版本库自动更新到服务器的web环境下,就是常说的钩子目录
passwd 是配置账号密码的文件
svnserve.conf 是svn服务配置的文件

3、先配置用户名密码,打开passwd文件,输入命令:

  1. vi passwd

下面这个图片是打开之后的界面,等号左面的是用户名,右面的是密码,去除注释#,加上自己需要填写的用户名密码,注意#号后面的空格也要去掉,不然可能会出问题
image.png
修改好后,保存退出!
image.png
4、配置用户权限,打开authz文件,可以给每个用户单独设置权限,也可以将用户放到一个组里,给整个组配置权限

  1. vi authz

4.1、单个用户配置权限的方式:
image.png
4.2、以组为方式的配置权限:
image.png

配置好之后保存退出就可以了,rw的意思是 r可读、w可写 ,配置的格式用文字解释一下:

  1. 版本库目录格式:
  2. [<版本库>:/项目/目录]
  3. @<用户组名> = <权限>
  4. <用户名> = <权限>

5、配置服务器信息,进入svnserve.conf文件,主要修改以下几个配置:

  1. vi svnserve.conf
  1. anon-access = read #匿名用户可读
  2. auth-access = write #授权用户可写
  3. password-db = passwd #使用哪个文件作为账号文件
  4. authz-db = authz #使用哪个文件作为权限文件
  5. realm = /home/svn #认证空间名,版本库所在目录

权限配置:

  1. [aliases]
  2. # joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average
  3. [groups]
  4. # harry_and_sally = harry,sally
  5. # harry_sally_and_joe = harry,sally,&joe
  6. admin = admin
  7. user = xq,zxh
  8. # [/foo/bar]
  9. # harry = rw
  10. # &joe = r
  11. # * =
  12. # [repository:/baz/fuz]
  13. # @harry_and_sally = rw
  14. # * = r
  15. #
  16. [/]
  17. admin=rw
  18. [/test]
  19. @admin = rw
  20. @user = rw
  21. [/test1]
  22. xq=rw

image.png
6、启动和停止SVN命令:

  1. #启动 -d表示守护进程, -r 表示在后台执行
  2. svnserve -d -r /home/svn
  3. #停止
  4. killall svnserve

启动完成之后可以看下进程是否正常运行,输入命令:

  1. ps -ef | grep svnserve

image.png

7、启动完成之后可以使用TortoiseSVN客户端连接SVN试下是否可以正常使用:
image.png

输入svn地址:svn://自己服务器的IP地址
image.png
点击OK后弹出输入用户名密码窗口
image.png
点击OK成功检出SVN代码库
image.png
image.png