您的位置:首页 > 其它

svn使用方法

2018-11-25 14:40 316 查看

安装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 安装 使用