1.安装svn服务器

先使用svnserve --version命令查看有没有安装svn服务器。

可以看到已经安装了,如果没有安装使用如下命令安装:

yum install -y subversion

2.创建svn版本库

mkdir /home/svn #我这里把版本库放在了home目录下的svn文件夹,方便管理 

svnadmin create /home/svn/repo0 #我这里将svn作为所有版本库的目录,并创建了一个名为repo0的版本库仓库

3.配置这个创建的版本库

进入刚才的创建的这个版本库的conf目录来配置这个repo0的版本库,可以看得到有三个文件

authz: 权限控制,哪些用户可以访问哪些文件

passed: 设置用户和密码的

svnserve.conf: 设置svn相关的操作

2.1先设置passwd

### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow,one account per line.

[users]
# harry = harryssecret
# sally = sallyssecret

xiajun=123456
lisi=12

这样我们就建立了xiajun用户, 123456密码,lisi用户,12密码


2.2 再设置权限authz

###  - an alias defined in a special [aliases] section,###  - all authenticated users,using the '$authenticated' token,###  - only anonymous users,using the '$anonymous' token,###  - anyone,using the '*' wildcard.
###
### A match can be inverted by prefixing the rule with '~'. Rules can
### grant read ('r') access,read-write ('rw') access,or no access
### ('').

[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

team0=xiajun
team1=lisi

#xiajun在team0组
#lisi在team1组


# [/foo/bar]
# harry = rw
# &joe = r
# * =



# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r
#
[repo0:/]
@team0=rw
@team1=r
# 第一个小组有读写的权限,第二个小组只有读取的权限



2.3最后设定snvserv.conf

[general]
### These options control access to the repository for unauthenticated
### and authenticated users.  Valid values are "write","read",### and "none".  The sample settings below are the defaults.
anon-access = read   #没有登录的用户不能访问
auth-access = write  #登录的用户可以写入
### The password-db option controls the location of the password
### database file.  Unless you specify a path starting with a /,### the file's location is relative to the directory containing
### this configuration file.
### If SASL is enabled (see below),this file will NOT be used.
### Uncomment the line below to use the default password file.
password-db = passwd  #密码文件为当前目录下的passwd 
### The authz-db option controls the location of the authorization
### rules for path-based access control.  Unless you specify a path
### starting with a /,the file's location is relative to the the
### directory containing this file.  If you don't specify an
### authz-db,no path-based access control is done.
### Uncomment the line below to use the default authorization file.
authz-db = authz  #验证权限文件为当前目录下的authz   
### This option specifies the authentication realm of the repository.
### If two repositories have the same authentication realm,they should
### have the same password database,and vice versa.  The default realm
### is repository's uuid.
realm =/home/svn/repo0 #认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字。

[sasl]
### This option specifies whether you want to use the Cyrus SASL
### library for authentication. Default is false.
### This section will be ignored if svnserve is not built with Cyrus
### SASL support; to check,run 'svnserve --version' and look for a line
### reading 'Cyrus SASL authentication is available.'
# use-sasl = true
### These options specify the desired strength of the security layer
### that you want SASL to provide. 0 means no encryption,1 means
### integrity-checking only,values larger than 1 are correlated
### to the effective key length for encryption (e.g. 128 means 128-bit
### encryption). The values below are the defaults.
# min-encryption = 0
# max-encryption = 256

采用默认配置. 以上语句都必须顶格写,左侧不能留空格,否则会出错.


好了,通过以上配置,你的svn就可以了。

3.启动svn服务器

启动svnserve -d -r /home/svn/repo0

可以看得到该版本库的svn服务器已经启动了。

4. 导入工程(还是在linux下面)

$ mkdir myproject  

$ mkdir myproject/trunk  

$ mkdir myproject/branches  

$ mkdir myproject/tags  

svn import myproject svn://192.168.1.109/repo0/MyProject -m "first import project"

注意一定要导入工程到这个版本库里,repo0只是一个仓库,仓库里面要放项目

5.检出工程

建议在windows下采用TortoiseSVN,连接地址为:svn://yourserveraddress(如果指定端口需要添加端口:端口号)

svn://172.16.81.106/repo0/myproject

可以看得到已经检出了

后面使用svn上传,修改,删除都可以使用TortoiseSVN操作,比较简单。

centos下面搭建svn服务器详细流程的更多相关文章

  1. ios – 在XCode提交期间,exclaimation point符号对文件意味着什么?

    当从XCode中提交对SVN存储库的更改时,某些文件具有“!”右栏中的符号.这个符号是什么意思,我应该用这些文件做什么?

  2. 如何在xCode 9.0中设置SVN存储库

    使用xCode9.0,我遇到了SVN设置问题.我找不到任何添加SVN存储库的选项适用于早期版本的xCode.在源代码管理中,我到处都是GIT.我正在使用SVN很长一段时间,并正在使用早期版本的xCode但是这不适用于xCode9.0.解决方法如果你有旧版本的xcode,并且上面的升级方法不能正常工作或无法使用,那么终端可以用来升级.>前往终点站>使用cd命令将目录更改为项目文件夹库>要验证您是否在

  3. ios – SVN忽略’.a’文件

    我正在尝试在我的XCode项目中添加一个’.a’文件但它被SVN忽略了,因此我无法将其添加到存储库中.任何线索可能是什么原因?解决方法是的,你必须手动完成.只需在控制台中导航到它并执行svnaddfile_name.a即可.

  4. Xcode和SVN:无法重命名我的类 – >错误:155007(路径不是工作副本目录)

    我读了this.我也发现了类似的problem.但到目前为止还没有解决方案.解决方法我遇到了同样的问题,谷歌指导我这个问题,所以为迟到的’回答’道歉.无论如何,我正在研究eclipse3.5,macosx雪豹,你似乎也在使用macosx?关键是,macosx’hfs-filesystem大多数情况下设置不区分大小写,所以因为你只是想改变文件名的大小写,这可能是你的问题.我的解决方法是从FOO.h到Foo.h执行重命名:>FOO.h–>foobar.h中>FooBar.h–>foo.h中

  5. 哪个是Android SVN项目的最佳结构?

    哪个是包含单个Android项目的SVN存储库的更好结构?要么基本上我想知道是否应该在层次结构中显式命名项目根文件夹.存储库只能容纳一个项目,但它将包含许多分支和标记.我正在使用带有SVN插件的Eclipse.谢谢,巴里解决方法我会这样:没有做过很多的Android开发,但是资源之类的东西我通常不在主要的源代码结构之外,并且使用svn:externals链接思考并可能在各种项目中使用它们

  6. CentOS 8.2服务器上安装最新版Node.js的方法

    这篇文章主要介绍了CentOS 8.2服务器上安装最新版Node.js的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  7. centos+php+coreseek+sphinx+mysql之一coreseek安装篇

    这篇文章主要介绍了centos+php+coreseek+sphinx+mysql之一coreseek安装篇的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下

  8. python调用subprocess模块实现命令行操作控制SVN的方法

    这篇文章主要介绍了使用python的subprocess模块实现对SVN的相关操作,通过设置GitSvn类,在该类下自定义执行SVN常规操作的方法,需要的朋友跟随小编一起看看吧

  9. Centos7 中 Node.js安装简单方法

    这篇文章主要介绍了Centos7 中 Node.js安装简单方法,非常不错具有一定的参考借鉴价值,需要的朋友可以参考下

  10. AndroidStudio重新share代码和上传到svn新地址教程

    这篇文章主要介绍了AndroidStudio重新share代码和上传到svn新地址教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部