码迷,mamicode.com
首页 > 其他好文 > 详细

svn使用方法

时间:2018-11-25 16:29:05      阅读:630      评论:0      收藏:0      [点我收藏+]

标签:组成   拷贝   安装   并且   修改   认证用户   group   value   密码验证   

安装svn

这里直接使用yum来安装svn服务,安装完成后创建版本库

[root@nfs1 ~]# yum install -y subversion

初始化svn项目
安装完成后创建svn项目,并且进入svn的conf目录下
auth是项目用户权限配置文件
passwd是用户认证密码配置文件

[root@nfs1 ~]# mkdir -p /data/svnroot/myproject
[root@nfs1 ~]# svnadmin create /data/svnroot/myproject/
[root@nfs1 ~]# cd /data/svnroot/myproject/conf
[root@nfs1 conf]# ls
authz passwd svnserve.conf

修改authz项目的权限配置文件
aliases 别名 ?
groups表示组成用户组:users = user1,user2
[/] ?项目根目录,在这篇文章中表示根目录/data/svnroot/myproject/

@*** = rw ? 表示引用的用户或用户组并给予rw读写权限
= r ? ?配置则表示除了上面配置的用户外,其他人只有只读权限
[myproject:/] ? 这里表示用户只能访问到指定myproject项目,myproject是项目名,根据实际配置来设定
user1 = rw ? ? ? ?用户user1读写权限?
[aliases]
# joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average
?
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
lin=xiang,user
?
[/]
@lin = rw
=r
[myproject:/]
user1 = rw

修改passwd用户认证密码文件
配置文件写入的格式为:用户 = 密码,如:

[root@nfs1 conf]# vim passwd 
[users]
# harry = harryssecret
xiang = pwd@123_#
user1 = pwd_324>
user = hgfd+asd]

修改svn的服务配置文件
在配置文件中指定
anon-access ? 匿名用户拥有哪种权限
auth-access ?认证用户拥有的权限
password-db ?密码认证文件(相对路径配置,即与passwd同在conf一个目录下)
authz-db ? 项目用户权限配置文件(同样使用相对路径)
realm ?设定生效的项目路径

以上是svn启动后基本可用的配置项

[root@nfs1 conf]# vim svnserve.conf
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = /data/svnroot/myproject

启动svn
启动svn并查看启动监听的端口信息
启动选项-d表示让服务进入到后台运行,-r 指定svn项目绝对路径

[root@nfs1 conf]# svnserve -d -r /data/svnroot/
[root@nfs1 conf]# netstat -ntlp |grep svn
tcp ? ? ? ?0 ? ? ?0 0.0.0.0:3690 ? ? ? ? ? ?0.0.0.0:* ? ? ? ? ? ? ? LISTEN ? ? ?2937/svnserve ? ?

客户端上使用svn(linux)

服务端配置好后,我又在另一台机器上安装了svnversion,来测试版本pull
客户端只需要安装svn即可,不需要其他配置
使用svn来拉取服务端项目:
格式:svn checkout svn://server ip/project ?--username=user

[root@nfs2 home]# svn checkout svn://192.168.1.234/myproject --username=xiang
Authentication realm: <svn://192.168.1.234:3690> /data/svnroot/myproject
Password for ‘xiang‘: 

-----------------------------------------------------------------------
ATTENTION!  Your password for authentication realm:

 ? <svn://192.168.1.234:3690> /data/svnroot/myproject

can only be stored to disk unencrypted!  You are advised to configure
your system so that Subversion can store passwords encrypted, if
possible.  See the documentation for details.

You can avoid future appearances of this warning by setting the value
of the ‘store-plaintext-passwords‘ option to either ‘yes‘ or ‘no‘ in
‘/root/.subversion/servers‘.
-----------------------------------------------------------------------
Store password unencrypted (yes/no)? yes
Checked out revision 0.
[root@nfs2 home]# ls
myproject

进入到拉取的myproject目录下,拷贝一些文件到此目录,并测试上传这些文件做测试
svn add 将所有文件添加版本控制号,并将这些文件上传至服务器端

[root@nfs2 home]# cd myproject/
[root@nfs2 myproject]# cp -rf /usr/local/src/cmake-3.12.2/* .
[root@nfs2 myproject]# ls
Auxiliary ? ? ? ? ? ? ?  CMakeCPackOptions.cmake.in ? ? ? ? CMakeLists.txt ? ? ? ? ?  CONTRIBUTING.rst ? ? ? 
bin ? ? ? ? ? ? ? ? ? ?  CMake.DeveloperReference.HTML.qs ? CMakeLogo.gif ?
[root@nfs2 myproject]# svn add *
----------------------省略
Adding ? ? ? ? bin
Adding  (bin)  bin/ccmake
Adding  (bin)  bin/cmake
Adding  (bin)  bin/cpack
Adding  (bin)  bin/ctest
Adding ? ? ? ? bootstrap
Adding ? ? ? ? cmake_install.cmake
Adding ? ? ? ? cmake_uninstall.cmake
Adding ? ? ? ? cmake_uninstall.cmake.in
Adding ? ? ? ? configure
Adding ? ? ? ? doxygen.config
Adding ? ? ? ? install_manifest.txt
[root@nfs2 myproject]# svn commit -m "add *"
----------------------省略 ? ? ? ? ? ? 将文件上传至服务端
Adding ? ? ? ? bin
Adding  (bin)  bin/ccmake
Adding  (bin)  bin/cmake
Adding  (bin)  bin/cpack
Adding  (bin)  bin/ctest
Adding ? ? ? ? bootstrap
Adding ? ? ? ? cmake_install.cmake
Adding ? ? ? ? cmake_uninstall.cmake
Adding ? ? ? ? cmake_uninstall.cmake.in
Adding ? ? ? ? configure
Adding ? ? ? ? doxygen.config
Adding ? ? ? ? install_manifest.txt
Transmitting file data ..............................
Committed revision 1.

?在服务端更新svn版本

[root@nfs1 myproject]# svn up
Updating ‘.‘:
At revision 1.

svn更新后就可以在服务端的myproject中保存了

客户端使用svn(windows)

首先安装一个名为TortoiseSVN的客户端,具体安装过程这里就不列举了
如何同步代码文件:
首先创建一个目录,并在该目录下放入任意文件,点击SVN Checkcout来指定一个svn服务器
技术分享图片
接下来指定服务端的项目以及本地项目的路径,然后点击ok
技术分享图片
由于我这里不是第一次上传文件进行测试,所以这里没有再次让我输入密码验证,验证的密码就是服务端中authz和passwd文件配置的
技术分享图片

至此svn的简单使用方法介绍完毕

svn使用方法

标签:组成   拷贝   安装   并且   修改   认证用户   group   value   密码验证   

原文地址:http://blog.51cto.com/8844414/2321686

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!