SVN创建仓库

这篇具有很好参考价值的文章主要介绍了SVN创建仓库。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1.安装svn

2.创建仓库

3.配置SVN

4.启动SVN

5.导入版本库

6.检出


1.安装svn

Linux系统安装svn

# centos系统
yum install subversion

# ubuntu系统
apt install subversion

查看svn安装版本,验证是否安装成功,若显示类似“svn,版本 1.9.7 (r1800392)”表示安装成功

svnserve --version

2.创建仓库

创建文件夹“svn”(可以自己取名),用于保存各代码仓库,我建在“/root/svn”

mkdir /root/svn

创建仓库,可以在root/svn下面创建多个仓库,方便启动服务时直接启一个root/svn总服务,而不是一个个启动,方便管理(后面演示)。这里我创建3个仓库 test1、test2、test3

svnadmin create /root/svn/test1
svnadmin create /root/svn/test2
svnadmin create /root/svn/test3

查看新建仓库。在仓库"./test1/conf"下有“authz”、"passwd"和"svnserve.conf" 3个配置文件分别表示:权限配置文件、用户名口令配置文件、svn服务配置文件

[root@localhost svn]$ cd /root/svn
[root@localhost svn]$ ls
test1  test2  test3
[root@localhost svn]$ cd test1
[root@localhost svn]$ ls
conf  db  format  hooks  locks  README.txt
[root@localhost svn]$ cd conf
[root@localhost svn]$ ls
authz  hooks-env.tmpl  passwd  svnserve.conf

3.配置SVN

这一步主要是配置上一步生成的“authz”、"passwd"和"svnserve.conf" 3个配置文件;将所有的仓库都执行一遍以下3步:

一、配置“authz”

[groups]下是用户分组,可以有多个组,我这里分组"admin"下有一个"robin"用户;"@admin = rw"表示拥有读写权限,"* = "表示其他用户没有权限访问。

SVN创建仓库

 二、配置"passwd"

"[users]"下对应用户名和密码,我这里用户名"robin"对应密码是"123456",你可以自己设置

SVN创建仓库

 三、配置"svnserve.conf"

"[general]"下有"anon-access"(非鉴权用户访问库的权限)、"auth-access"(鉴权用户访问库的权限)、"password-db"(指定用户名口令文件名)、"authz-db"(指定权限配置文件名)、"realm" (指定版本库的认证域),将这5处的注释"#"去掉,注意前面不要留空格,前4处无需修改,最后一处"realm"后面改成自己的仓库名

SVN创建仓库

4.启动SVN

(推荐)前面提到过将多个仓库放在同一个文件夹的好处,可以只启动一个服务管理多个仓库

svnserve -d -r /root/svn

(不推荐)也可以启动多个服务分别对应一个仓库,依次启动test1、test2、test3三个库的服务,若端口冲突则指定不同端口号

svnserve -d -r /root/svn/test1
svnserve -d -r /root/svn/test2
svnserve -d -r /root/svn/test3

启动服务可以指定端口(默认:3690)

svnserve -d -r /root/svn/test2 --listen-port 52020

服务启动后可以通过命令"netstat -antple | grep svn"查看服务状态

[root@localhost svn]$ netstat -antple | grep svn
tcp        0      0 0.0.0.0:3690            0.0.0.0:*               LISTEN      1000       2187961    23320/svnserve

若启动服务过程中报错"svnserve: E000098: 不能绑定服务器套接字: 地址已在使用"或"svnserve: Can't bind server socket: Address already in use",表示端口被占用,svn默认使用端口为3690,"netstat -antple | grep 3690"查看使用3690端口的服务ID,然后调用命令将其干掉

[root@localhost svn]$ netstat -antple | grep 3690
tcp        0      0 0.0.0.0:3690            0.0.0.0:*               LISTEN      1000       2208076    52013/svnserve
[root@localhost svn]$ kill 52013

设置开机自启svnserve服务:

vim /lib/systemd/system/svnserve.service
# 编辑下面文件中的“ExecStart”字段
[Unit]
Description=Subversion protocol daemon
After=syslog.target network.target

[Service]
Type=forking
EnvironmentFile=/etc/sysconfig/svnserve
ExecStart=/usr/bin/svnserve -d $OPTIONS

[Install]
WantedBy=multi-user.target                    
vim /etc/sysconfig/svnserve
# OPTIONS is used to pass command-line arguments to svnserve.
# 
# Specify the repository location in -r parameter:
OPTIONS="-r /root/svn" # 设置成自己仓库的路径,建议使用绝对路径

5.导入版本库

前面4步在svn服务器上执行完成后,接下来在本机(客户端)执行导入和检出

新建的仓库中什么也没有,这时候拉取下来则是空文件夹,我们可以向仓库中导入我们的项目

将本地文件夹"/home/robin/project/test1"导入仓库所在服务器"129.201.314.200"

svn import /home/robin/project/test1 svn://129.201.314.200/test1 -m "new project" --username=robin

可以指定svn服务的端口号(默认是3690)

svn import /home/robin/project/test2 svn://129.201.314.200:52020/test2 -m "new project" --username=robin

报错"svn:E170001:Authorization failed",Subversion里面并没有找到相关账号信息,输入以下命令清除已经保存的错误账号信息,连接时重新输入密码;若仍然报错,则检查“authz”配置文件

rm -rf ~/.subversion/auth

如果遇到以下报错,检查ip地址和端口号是否正确,查看服务器上svn服务是否已经启动,检查仓库"conf"文件下3个配置文件是否正确,修改以上错误重启svn服务。若仍然报错,则可能是访问不到svn服务器所在网络和端口,你的svn服务器和主机可能不在一个局域网内,需要做ip和端口映射,将内网ip端口映射到外网ip端口,我遇到这个错误时,做了ip端口映射:128.116.72.218:36900->129.201.314.200:3690/tcp,错误就解决了,访问这个地址即可:128.116.72.218:36900。

svn: E170013: Unable to connect to a repository at URL 'svn://129.201.314.200/test1'
svn: E000111: 无法连接主机“129.201.314.200”: 拒绝连接

若发现项目上传到仓库时某些文件无法上传(被忽略),比如我上传时就有一个文件无法上传:

SVN创建仓库

 原因是linux 下svn 忽略某类文件和目录,我们修改其配置文件

vim ~/.subversion/config

 找到包含 “global-ignores” 的那一行,去掉被忽略的文件格式

SVN创建仓库

6.检出

命令格式:svn checkout http://路径(目录或文件的全路径) [本地目录全路径] --username 用户名

其中"checkout"可以简写为"co"文章来源地址https://www.toymoban.com/news/detail-446393.html

svn checkout svn://128.116.72.218:36900/test1 /home/robin/project_test --username robin

到了这里,关于SVN创建仓库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Git的基本操作(安装Git,创建本地仓库,配置Git,添加、修改、回退、撤销修改、删除文件)

    Git 是开放源代码的代码托管⼯具,最早是在Linux下开发的。开始也只能应⽤于Linux平台,后⾯慢慢的被移植到windows下,现在,Git可以在Linux、Unix、Mac和Windows这⼏⼤平台上正常运⾏了。 如果你的的平台是centos,安装git相当简单,以我的centos7.6为例: 我们还可以用下面的指令来

    2024年03月28日
    浏览(64)
  • Git的安装和常用命令&Git与SVN的区别&Gitee远程仓库团队开发代码共享演示

    目录 一、Git入门 1.1 Git简介 1.2 Git与SVN的区别 1.2.1 详解 1.2.2 图解  1.3 Git相较于SVN的优势与劣势 1.3.1 Git的优势与劣势 1.3.2 SVN的优势与劣势 1.4 Git的工作流程 1.4.1 图解 1.4.2 详解 二、Git的安装以及常用命令 2.1 Git官网链接 2.2 安装步骤 2.3 Git的常用命令 2.3.1  常用命令概览 2.4 使

    2024年02月03日
    浏览(50)
  • 基于vscode实现vue3项目创建启动+安装配置路由vue-router实现单页面组件切换

    访问https://nodejs.org/en,点击下载最新版本的nodejs,并安装。 在项目目录文件下,通过cmd运行下述指令。 依次输入下列命令,启动vue项目 在浏览器中加载http://localhost:5173/,页面加载成功,说明vue项目安装启动成功。 建议安装第三方库通过vscode中的终端来操作,项目启动通过

    2024年02月03日
    浏览(80)
  • 在Mac上安装配置svn

    版本控制系统对于程序员来说是至关重要的工具,而Subversion(简称svn)就是一种流行的版本控制系统。本文将指导你在Mac上安装并配置svn,让你更好地管理代码版本。 安装svn 首先,我们需要从Subversion官方网站下载适合你的Mac版本的svn安装包。打开终端,进入下载文件的目录

    2024年02月04日
    浏览(32)
  • 安装配置SVN版本控制管理工具

    SVN工具能帮我们做什么? 核心功能:文档版本管理系统 适合对象:个人与团队都可以使用,企业中项目资源的重要管理工具 举例:一个文件夹里面的文档管理 1.下载安装SVN服务器 VisualSVN-Server 2.下载安装SVN客户端 TortoiseSVN (一)安装SVN服务器 VisualSVN-Server            (二

    2023年04月23日
    浏览(37)
  • eclipse svn 插件安装及配置使用教程

    Help--Eclipse Marketplace,搜索svn,点击install,选择所有安装选项,确认后一步一步往下点,然后接受协议,安装完成后重启eclipse即可生效。     Help - Install New Software 点击add按钮,在弹出窗口中,输入name(自己为变量命的名)和插件的URL,然后点击add SVN插件与Subversion版本的对应关

    2024年02月16日
    浏览(51)
  • SVN安装步骤及在IDEA中配置

    首先进入官网:https://www.visualsvn.com/visualsvn/ 其次 找到 Download 按钮 然后找到 Prerequisite Software: TortoiseSVN ,在右边找到对应的版本进行下载。 svn的安装比较简单,可以直接一路next安装,但是也需要注意几点 找到刚才下载的软件,进行安装。 注意:在这步安装的时候需要注意 1.更换

    2024年02月13日
    浏览(45)
  • 配置 crontab 作业和 创建协作目录

    一: 配置 cron 作业,该作业每隔 3 分钟运行并执行以下命令: logger \\\"EX200 in progress\\\" ,以用户 natasha 身份运行      e:编辑 u:指定用户 l:查看 创建协作目录 创建具有特殊权限的目录 /home/managers ,要求如下: /home/managers 目录属于 sysmgrs 组 此目录可以被 sysmgrs 的组成员读取、

    2024年02月12日
    浏览(28)
  • 本地搭建svn仓库 + 调试svn hooks

    本地搭建SVN仓库 + 调试svn hooks : 1. 环境准备: 需要安装TortoiseSVN客户端,可以用来搭建仓库,也可以执行svn add commit update等操作。有时直接在linux环境调试svn hooks不方便时,可以考虑此种方式。 2. 搭建本地仓库的过程: a.确保已经安装了TortoiseSVN,在想要放置仓库的地方新建一

    2024年02月11日
    浏览(39)
  • 【Docker私有仓库】创建与配置

    (1)拉取私有仓库镜像(此步省略) (2)启动私有仓库容器 (3)打开浏览器 输入地址 http://192.168.1.103:5000/v2/_catalog 看到 {\\\"repositories\\\":[]} 表示私有仓库搭建成功并且内容为空 (4)修改daemon.json 添加以下内容,保存退出。 此步用于让 docker信任私有仓库地址 (5)重启docker

    2024年02月11日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包