CentOS搭建SVN

查看系统环境

1)查看系统版本

[root@node-005~]#cat/etc/redhat-release
CentOSrelease6.8(Final)

2)查看系统全部信息

[root@node-005~]#uname-a
Linuxnode-0052.6.32-642.15.1.el6.x86_64#1SMPFriFeb2414:31:22UTC2017x86_64x86_64x86_64GNU/Linux

3)查看系统内核

[root@node-005~]#uname-r
2.6.32-642.15.1.el6.x86_64

安装SVN

1、修改yum仓库配置(可不做,我这里做事保留SVN安装包)

[root@node-005~]#sed-i's#keepcache=0#keepcache=1#g'/etc/yum.conf
[root@node-005~]#grepkeepcache/etc/yum.conf#rpm包不删除
keepcache=1
[root@node-005~]#yum-yinstallsubversion

wKiom1j9XzeTMAlSAAAep6dzBvc799.png

2、查找查找SVN安装包

[root@node-005~]#find/-namesubversion-1.6.11-15.el6_7.x86_64.rpm
/var/cache/yum/x86_64/6/base/packages/subversion-1.6.11-15.el6_7.x86_64.rpm
[root@node-005~]#tree/var/cache/yum/x86_64/6/base/packages/
/var/cache/yum/x86_64/6/base/packages/
├──apr-1.3.9-5.el6_2.x86_64.rpm
├──apr-util-1.3.9-3.el6_0.1.x86_64.rpm
├──libproxy-0.3.0-10.el6.x86_64.rpm
├──libproxy-bin-0.3.0-10.el6.x86_64.rpm
├──libproxy-python-0.3.0-10.el6.x86_64.rpm
├──neon-0.29.3-3.el6_4.x86_64.rpm
├──pakchois-0.4-3.2.el6.x86_64.rpm
├──perl-URI-1.40-2.el6.noarch.rpm
├──subversion-1.6.11-15.el6_7.x86_64.rpm
└──tree-1.5.3-3.el6.x86_64.rpm

0directories,10files
[root@node-005packages]#rpm-aqsubversion
subversion-1.6.11-15.el6_7.x86_64

配置并启动SVN

1、创建SVN版本库根目录(svndata)及密码权限目录(svnpasswd

[root@node-005~]#mkdir-p/application/svndata
[root@node-005~]#mkdir-p/application/svnpasswd
[root@node-005~]#tree/application/svn*
/application/svndata
/application/svnpasswd

0directories,0files

2、启动SVN服务指定服务的SVN根目录

[root@node-005~]#svnserve-d-r/application/svndata/#-d
后台运行;-r指定运行目录

#注:查看svnserver命令帮助

[root@node-005~]#svnserve--help
用法:svnserve[-d|-i|-t|-X][options]

有效选项:
-d[--daemon]:后台模式
-i[--inetd]:inetd模式
-t[--tunnel]:隧道模式
-X[--listen-once]:监听一次方式(调试用)
-r[--root]ARG:服务的根目录
-R[--read-only]:强制只读;覆盖版本库配置文件
--config-fileARG:从文件ARG读取配置
--listen-portARG:监听端口
[方式:daemon,listen-once]
--listen-hostARG:监听主机名称或IP地址
[方式:daemon,listen-once]
-T[--threads]:使用线程代替进程[方式:daemon]
--foreground:在前台运行(调试用)
[方式:daemon]
--log-fileARG:svnserve日志文件
--pid-fileARG:写进程PID到文件ARG
[方式:daemon,listen-once]
--tunnel-userARG:隧道用户名(默认是当前UID对应的用户名)
[方式:tunnel]
-h[--help]:显示本帮助
--version:显示程序版本信息

3、查看服务是否启动

1)查看进程

[root@node-005~]#ps-ef|grepsvn
root67481015:25?00:00:00svnserve-d-r/application/svndata/
root67526658015:34pts/000:00:00grepsvn

2)查看端口

[root@node-005~]#netstat-lntup
ActiveInternetconnections(onlyservers)
ProtoRecv-QSend-QLocalAddressForeignAddressstatePID/Programname
tcp000.0.0.0:36900.0.0.0:*LISTEN6748/svnserve
tcp000.0.0.0:33060.0.0.0:*LISTEN5217/MysqLd
tcp000.0.0.0:210.0.0.0:*LISTEN2160/vsftpd
tcp000.0.0.0:220.0.0.0:*LISTEN5581/sshd
tcp00127.0.0.1:6310.0.0.0:*LISTEN1315/cupsd
tcp00127.0.0.1:250.0.0.0:*LISTEN1905/sendmail
tcp00:::80:::*LISTEN1925/httpd
tcp00:::22:::*LISTEN5581/sshd
tcp00::1:631:::*LISTEN1315/cupsd
udp000.0.0.0:6310.0.0.0:*1315/cupsd

3):已知端口号查看进程

[root@node-005~]#lsof-itcp:3690
COMMANDPIDUSERFDTYPEDEVICESIZE/OFFNODENAME
svnserve6748root3uIPv4488660t0TCP*:svn(LISTEN)
[root@node-005~]#netstat-lntup|grep3690
tcp000.0.0.0:36900.0.0.0:*LISTEN6748/svnserve

创建SVN版本库

1、新的Subversion项目

1)创建一个新的Subversion项目(版本库)

[root@node-005~]#svnadmincreate/application/svndata/sadoc
[root@node-005~]#ll/application/svndata/sadoc/
总用量24
drwxr-xr-x2rootroot40964月2015:47conf
drwxr-sr-x6rootroot40964月2015:47db
-r--r--r--1rootroot24月2015:47format
drwxr-xr-x2rootroot40964月2015:47hooks
drwxr-xr-x2rootroot40964月2015:47locks
-rw-r--r--1rootroot2294月2015:47README.txt

2)查看帮助

[root@node-005~]#svnadmin--help
一般用法:svnadminSUBCOMMANDREPOS_PATH[ARGS&OPTIONS...]
使用“svnadminhelp<subcommand>”得到子命令的帮助信息。
使用“svnadmin--version”查看程序的版本号和文件系统模块。

可用的子命令:
crashtest
create
deltify
dump
help(?,h)
hotcopy
list-dblogs
list-unused-dblogs
load
lslocks
lstxns
pack
recover
rmlocks
rmtxns
setlog
setrevprop
setuuid
upgrade
verify

[root@node-005~]#svnadminhelpcreate
create:用法:svnadmincreateREPOS_PATH

在REPOS_PATH创建一个新的空版本库。

有效选项:
--bdb-txn-nosync:在提交事务时禁用fsync[BDB]
--bdb-log-keep:禁用自动删除日志文件[BDB]
--config-dirARG:从目录ARG读取用户配置文件
--fs-typeARG:版本库类型:“fsfs”(默认)或“bdb”
--pre-1.4-compatible:使用与1.4之前版本兼容的格式
--pre-1.5-compatible:使用Subversion1.5之前版本的格式
--pre-1.6-compatible:使用与1.6之前版本兼容的格式

2、仓库用户权限配置

1)配置允许用户solin读写访问

①备份配置文件

[root@node-005~]#cd/application/svndata/sadoc/conf/
[root@node-005conf]#/bin/cpsvnserve.confsvnserve.conf.solin$(date+%F)

②过滤要修改的配置

[root@node-005conf]#egrep"\-access|\-db="svnserve.conf
#anon-access=read
#auth-access=write
#password-db=passwd
#authz-db=authz

③修改后的参数(可以用sed替换,也可用vi/vim直接修改)

[root@node-005conf]#egrep"\-access|\-db="svnserve.conf
#anon-access=none#不允许匿名访问
#auth-access=write#允许可写
#password-db=/application/svnpasswd/passwd#密码数据库,存放SVN吗
#authz-db=/application/svnpasswd/authz#控制权限的数据库

wKiom1j9X1mD0EQxAACEc0dTG1I108.png

另:修改后对比

[root@node-005conf]#egrep"\-access|\-db="svnserve.conf
#anon-access=read
anon-access=none
#auth-access=write
auth-access=write
#password-db=passwd
password-db=/application/svnpasswd/passwd
#authz-db=authz
authz-db=/application/svnpasswd/authz
[root@node-005conf]#diffsvnserve.conf.solin2017-04-20svnserve.conf
12a13
>anon-access=none
13a15
>auth-access=write
20a23
>password-db=/application/svnpasswd/passwd
27a31
>authz-db=/application/svnpasswd/authz

3、配置authzpasswd证书文件

1)把密码证书文件模板复制到相关目录并修改文件权限

[root@node-005conf]#cpauthzpasswd/application/svnpasswd/
[root@node-005conf]#ll/application/svnpasswd/
总用量8
-rw-r--r--1rootroot10804月2017:22authz
-rw-r--r--1rootroot3094月2017:22passwd
[root@node-005conf]#chmod700/application/svnpasswd/*
[root@node-005conf]#ll/application/svnpasswd/
总用量8
-rwx------1rootroot10804月2017:22authz
-rwx------1rootroot3094月2017:22passwd

2authzpasswd的配置

vi/application/svnpasswd/authz
添加如下:
[groups]
bd_sa=solin,test
#[/foo/bar]
[sadoc:/]
#[repository:/baz/fuz]
@bd_sa=rw
test1=r



wKiom1j9X4XyCgQVAAAj5kplAUI818.png

vi/application/svnpasswd/passwd
添加如下:
[users]
solin=bdyun
test=bdyun


wKiom1j9X3rQj2tiAAAhtvu9Lao587.png

4、重启SVN

[root@node-005conf]#pkillsvnserve
[root@node-005conf]#ps-ef|grepsvn
root68326658017:52pts/000:00:00grepsvn
[root@node-005conf]#svnserve-d-r/application/svndata/
[root@node-005conf]#ps-ef|grepsvn
root68341017:52?00:00:00svnserve-d-r/application/svndata/
root68366658017:52pts/000:00:00grepsvn

Windows(客户端)安装TortoisSVN

1、官网下载TortoisSVN

https://tortoisesvn.net/downloads.html

wKioL1j9X6jT2dmFAAHDmrjBZZ0993.png

2、安装

1)下载软件后,双击程序进行安装,点击“Next”,我这里选择的试64SVN

wKioL1j9X7XAjT9yAABlcIatRkY027.png

wKiom1j9X8bgZtsUAADdCFuuYh4390.png

2)在许可证协议页面,选择“I Accept the terms in the License Agreement”,点击“Next”;

wKiom1j9X9WyW49qAACT0Ysvu1U817.png

3)在自定义选项页面,可以选择安装目录,也可以直接点击“Next”进行安装;

wKiom1j9X-XxRDDlAAB_MrWvAaI531.png

4)点击“Install”开始安装;

wKiom1j9YAKQop7LAABj2CQz2K4275.png

wKioL1j9YBHS38qhAABk7Cyw8CU374.png

5)安装完成后,点击“Finsh”;

wKiom1j9YBuRp36RAADht-64kQg250.png

Windows使用SVN版本控制系统

连接的方式,账户及密码

svn;//192.168.119.91/sadoc#你自己的服务器IP

用户名:solin

密码:bdyun

1、选择本地目录或创建目录作为拉取(同步)SVN项目的库的目录,在目录中选择SVNCheckout

wKiom1j9YOGxMRuZAABLdQUJ1dM233.png

2、设置地址,分别输入SVN地址和本地地址,点击OK继续

wKioL1j9YO3RJfndAAAqdU75QA0977.png

3、输入用户名和密码,点击OK继续

wKioL1j9YPjzTxYzAAAX4_-1xF4185.png

4、成功连接(可以感觉个人喜好现在语言,官网下载语言包,下面图片是我汉化后的截图)

1)汉化下载地址:https://tortoisesvn.net/downloads.html

wKioL1j9YQPg45HMAACs7QSS8iI040.png

2SVN checkout完成

wKioL1j9YQ7yxq3EAABBZXnOuYU328.png

5、在test_svn目录中创建文件test.txt,提交

wKioL1j9YRqBDA6_AABK1rJE5wA109.png

6、填写提交信息

wKiom1j9YSbzdNRPAABheWJIIz8769.png

7、提交完成,版本变成1

wKioL1j9YTXCAys1AABLgj2Gkyo862.png

到这里SVN服务搭建及客户端测试就完全结束了。

CentOS6.8 搭建SVN及使用的更多相关文章

  1. 利用Node实现HTML5离线存储的方法

    这篇文章主要介绍了利用Node实现HTML5离线存储的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  2. ios – 使用带有NodeJs HTTPS的certificates.cer

    我为IOS推送通知生成了一个.cer文件,我希望将它与NodeJSHTTPS模块一起使用.我发现HTTPS模块的唯一例子是使用.pem和.sfx文件,而不是.cer:有解决方案吗解决方法.cer文件可以使用两种不同的格式进行编码:PEM和DER.如果您的文件使用PEM格式编码,您可以像使用任何其他.pem文件一样使用它(有关详细信息,请参见Node.jsdocumentation):如果您的文件使

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

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

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

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

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

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

  6. 如何在XCode IDE中构建NodeJS?

    如何在XCodeIDE中将NodeJS构建为项目?NodeJS构建指令说它应该用以下内容构建:但是我希望在XCodeIDE中构建.我真正想要做的是在我的应用程序中嵌入NodeJS,所以我想如果我可以在XCode中构建NodeJS,那么我可以调整它以在我建立和运行NodeJS后添加我的应用程序.我想通过让V8在XCode中编译来取得一些进展,现在我正在尝试将NodeJS添加到V8项目中.解决方法在节点存储库根目录中运行./configure–xcode,您将获得所需的node.xcodeproj文件.

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

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

  8. 深入云存储系统Swift核心组件:Ring实现原理剖析

    它的目的是用于托管Rackspace的CloudFilesservice,原始项目代号是swift,所以沿用至今。Ring是Swift中最重要的组件,用于记录存储对象与物理位置间映射关系。先来看一下Swift文档中关于Ring的描述:Ring用来确定数据驻留在集群中的位置。有单独对应于Account数据库、container数据库和单个object的ring。Ring使用zone的概念来保证数据的隔离。每个partition的replica都确保放在了不同的zone中。本文逐步深入探讨了Swift如何通过

  9. openstack学习笔记七 swift安装

    指定映射位置创建ring文件启动服务代维服务proxyserver

  10. openstack安装liberty--安装对象存储服务swift

    通常使用CACHE技術提高性能Accountservers賬戶服務,管理對象存儲中的賬戶定義。Containerservers容器服務,在對象存儲中管理容器或文件夾映……Objectservers對象服務,在存儲節點管理實際的對象,比如文件。Wsgimiddleware處理認證,通常使用OPENSTACKIdentityswiftclient為用戶提供命令行接口使用RESTAPIswift-init初始化和構建RING文件腳本swift-recon一個命令行工具,用於檢索群集的各種度量和測試信息。

随机推荐

  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架构–可能与问题有关!

返回
顶部