《工具箱-SVN》SVN安装、备份、迁移教程

一、服务器搭建SVN

1.检查SVN是否存在

[root@hadoop_zxy ~]# svn -version
-bash: svn: command not found

2.安装SVN

[root@hadoop_zxy ~]# yum install subversion
Loaded plugins: fastestmirror, langpacks
Installed:
  subversion.x86_64 0:1.7.14-16.el7

Dependency Installed:
  gnutls.x86_64 0:3.3.29-9.el7_6        neon.x86_64 0:0.30.0-4.el7                    nettle.x86_64 0:2.7.1-9.el7_9
  pakchois.x86_64 0:0.4-10.el7          subversion-libs.x86_64 0:1.7.14-16.el7        trousers.x86_64 0:0.3.14-2.el7

Complete!

3.创建版本库

[root@hadoop_zxy apps]# mkdir /zxy/apps/svn
[root@hadoop_zxy apps]# ls
elasticsearch-6.5.3  jdk1.8.0_311  kafka_2.11-1.1.1  kibana-6.5.3  scala-2.11.8  svn  zookeeper-3.6.3
[root@hadoop_zxy apps]# cd svn

4.创建版本库存放文件地址

[root@hadoop_zxy svn]# svnadmin create /zxy/apps/svn/repositories

5.修改配置文件

5.1 vim authz

新增以下部分:

[/]

用户名= rw

[/] 表示控制的路径是全部,用户名自定义, rw 表示的权限 可读写


[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

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

# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r
#


[/]

用户名 = rw

~

5.2 vim passwd

新增以下部分:

用户名 = 密码

用户名和密码处自定义


[users]
# harry = harryssecret
# sally = sallyssecret
#
用户名 = 密码
~

5.3 vim svnserve.conf

释放并修改以下部分

anon-access = none
auth-access = write

password-db = passwd

authz-db = authz
realm = repositories

### This file controls the configuration of the svnserve daemon, if you
### use it to allow access to this repository.  (If you only allow
### access through http: and/or file: URLs, then this file is
### irrelevant.)

### Visit http://subversion.apache.org/ for more information.

[general]
### The anon-access and auth-access options control access to the
### repository for unauthenticated (a.k.a. anonymous) users and
### authenticated users, respectively.
### Valid values are "write", "read", and "none".
### Setting the value to "none" prohibits both reading and writing;
### "read" allows read-only access, and "write" allows complete
### read/write access to the repository.
### The sample settings below are the defaults and specify that anonymous
### users have read-only access to the repository, while authenticated
### users have read and write access to the repository.
anon-access = none
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
### 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
### 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 = repositories
### The force-username-case option causes svnserve to case-normalize
### usernames before comparing them against the authorization rules in the
### authz-db file configured above.  Valid values are "upper" (to upper-
### case the usernames), "lower" (to lowercase the usernames), and
### "none" (to compare usernames as-is without case conversion, which
### is the default behavior).
# force-username-case = none

[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

6.启动并查看SVN

[root@hadoop_zxy conf]# svnserve -d -r /zxy/apps/svn/

[root@hadoop_zxy conf]#  netstat -apn | grep 3690
tcp        0      0 0.0.0.0:3690            0.0.0.0:*               LISTEN      7757/svnserve

7.SVN Checkout

用于初次下载项目

在这里插入图片描述

8.SVN Update

用于更新项目内容

在这里插入图片描述

9.SVN Commit

用于提交项目更改内容

在这里插入图片描述

二、SVN-无法连接主机,目标计算机积极拒绝,无法连接

在这里插入图片描述

1.检查SVN进程

发现SVN进程已经关闭,想起来前几天重启了一下服务器,SVN服务器没有设置开机自启


[root@hadoop_zxy ~]# ps -ef | grep svn
root      3652  2079  0 11:31 pts/0    00:00:00 grep --color=auto svn

2.手动启动SVN


[root@hadoop_zxy ~]# svnserve -d -r/zxy/apps/svn
[root@hadoop_zxy ~]# ps -ef | grep svn
root      4690     1  0 11:33 ?        00:00:00 svnserve -d -r/zxy/apps/svn
root      4707  2079  0 11:33 pts/0    00:00:00 grep --color=auto svn
[root@hadoop_zxy ~]#

3.重新尝试使用SVN

在这里插入图片描述

注意:大家在重启服务器后,一定要记得查看SVN的进程

三、SVN备份、迁移

SVN需要备份,或者SVN服务器迁移,可以使用svnadmin的dump和load命令进行操作。

1.将源SVN版本库文件备份

svnadmin dump /zxy/apps/svn/old > dataproject

2.将备份文件发送到新的服务器

scp /zxy/apps/svn/dataproject root@ip:/zxy/apps/svn

3.在目标服务器的SVN中创建版本库存放文件地址

新创建的版本库文件地址,需要修改相关的配置文件,参考第一章即可

svnadmin create /zxy/apps/svn/new
svnadmin load /zxy/apps/svn/new < ./dataproject
  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
git-svn 是一个桥接工具,用于在 Git 和 Subversion (SVN) 之间进行转换和交互。下面是 git-svn安装配置过程。 安装 Git: 1. 在官网 (https://git-scm.com/downloads) 上下载适合你操作系统的 Git 安装程序。 2. 打开安装程序并按照指示进行安装。 3. 验证安装是否成功,在命令提示符或终端上运行 "git --version" 命令,如果出现 Git 的版本号信息,则说明安装成功。 配置 Git: 1. 打开命令提示符或终端,并运行以下命令来配置你的 Git 用户名和邮箱: ``` git config --global user.name "你的用户名" git config --global user.email "你的邮箱地址" ``` 安装 Git-svn 桥接工具: 1. 在命令提示符或终端上运行以下命令安装 Git-svn: - 在 Ubuntu 上使用 apt-get: ``` sudo apt-get install git-svn ``` - 在 macOS 上使用 Homebrew: ``` brew install git-svn ``` - 在 Windows 上使用 Scoop: ``` scoop install git-svn ``` 配置 Git-svn: 1. 在命令提示符或终端上运行以下命令配置 Git-svn: ``` git svn init [SVN 仓库 URL] -s ``` 2. 这将为你的 Git 仓库创建一个指向 SVN 仓库的远程“refs/remotes/origin/trunk”引用。 3. 运行以下命令来下载远程 SVN 仓库的历史记录: ``` git svn fetch ``` 4. 这将下载远程 SVN 仓库的历史记录到你的本地 Git 仓库。 5. 当你想要提交更改时,使用 Git 的命令,例如 "git add"、"git commit"等来管理更改,并使用以下命令将更改推送到 SVN 仓库: ``` git svn dcommit ``` 以上是 git-svn安装配置过程。-git提供了更快速、灵活、分布式的版本控制系统,而git-svn桥接工具则使得想要在 git 和 Subversion (SVN)之间进行转换和交互的用户能够灵活使用两种工具。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DATA数据猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值