一 公司的svn服务更换新地址,本地电脑svn checkout出的项目无法更新 大概俩种思路
1 修改.svn/wc.db中的uuid
sqlite3 .svn/wc.db
sqlite> select * from REPOSITORY; #一般是只有一条记录, 修改后会有两条
sqlite> update REPOSITORY set uuid="bdbd6e13-965c-4da7-a4da-d4840425081e" where id=1;
sqlite> .exit
2 通过小乌龟更新仓库地址
一、重新定位svn
说明:没有提交的文件已经无法提交到旧svn服务器上,重新定位不影响副本,重新定位后好造的项目本地副本需要update下(提交修改了外部链接)。
- 打开本地副本,右键TortoiseSVN->Relocate,如图:
4. 重新定位成功后再进行update、commit等操作。
二 升级subversion
升级前请做好备份,这里就不阐述了
- 添加subversion的yum源
cat >> /etc/yum.repos.d/wandisco-svn.repo << EOF
[WandiscoSVN]
name=Wandisco SVN Repo
baseurl=http://opensource.wandisco.com/centos/\$releasever/svn-1.14/RPMS/\$basearch/
enabled=1
gpgcheck=0
EOF
- 卸载subversion
(venv) [root@node-1 ~]# yum remove subversion
已加载插件:fastestmirror
正在解决依赖关系
--> 正在检查事务
---> 软件包 subversion.x86_64.0.1.7.14-16.el7 将被 删除
--> 解决依赖关系完成
依赖关系解决
=============================================================================================================================================================================================
Package 架构 版本 源 大小
=============================================================================================================================================================================================
正在删除:
subversion x86_64 1.7.14-16.el7 @anaconda 4.6 M
事务概要
=============================================================================================================================================================================================
移除 1 软件包
安装大小:4.6 M
是否继续?[y/N]:y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在删除 : subversion-1.7.14-16.el7.x86_64 1/1
警告:/etc/sysconfig/svnserve 已另存为 /etc/sysconfig/svnserve.rpmsave
验证中 : subversion-1.7.14-16.el7.x86_64 1/1
删除:
subversion.x86_64 0:1.7.14-16.el7
完毕!
- 安装subversion1.14.2
(venv) [root@node-1 ~]# yum clean all
已加载插件:fastestmirror
正在清理软件源: WandiscoSVN base docker-ce-stable epel extras updates
Cleaning up list of fastest mirrors
(venv) [root@node-1 ~]# yum install subversion-1.14.2-1.x86_64
已加载插件:fastestmirror
Determining fastest mirrors
epel/x86_64/metalink | 6.7 kB 00:00:00
* base: mirrors.aliyun.com
* epel: mirrors.bfsu.edu.cn
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
WandiscoSVN | 2.9 kB 00:00:00
base | 3.6 kB 00:00:00
docker-ce-stable | 3.5 kB 00:00:00
epel | 4.7 kB 00:00:00
extras | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
(1/10): base/7/x86_64/group_gz | 153 kB 00:00:00
(2/10): docker-ce-stable/7/x86_64/updateinfo | 55 B 00:00:00
(3/10): epel/x86_64/group_gz | 99 kB 00:00:00
(4/10): docker-ce-stable/7/x86_64/primary_db | 107 kB 00:00:00
(5/10): epel/x86_64/updateinfo | 1.0 MB 00:00:00
(6/10): extras/7/x86_64/primary_db | 249 kB 00:00:00
(7/10): WandiscoSVN/7/x86_64/primary_db | 23 kB 00:00:00
(8/10): epel/x86_64/primary_db | 7.0 MB 00:00:01
(9/10): updates/7/x86_64/primary_db | 21 MB 00:00:17
base/7/x86_64/primary_db FAILED
http://mirrors.aliyuncs.com/centos/7/os/x86_64/repodata/6d0c3a488c282fe537794b5946b01e28c7f44db79097bb06826e1c0c88bad5ef-primary.sqlite.bz2: [Errno 12] Timeout on http://mirrors.aliyuncs.com/centos/7/os/x86_64/repodata/6d0c3a488c282fe537794b5946b01e28c7f44db79097bb06826e1c0c88bad5ef-primary.sqlite.bz2: (28, 'Connection timed out after 30002 milliseconds')
正在尝试其它镜像。
(10/10): base/7/x86_64/primary_db | 6.1 MB 00:00:03
正在解决依赖关系
--> 正在检查事务
---> 软件包 subversion.x86_64.0.1.14.2-1 将被 舍弃
--> 正在处理依赖关系 libserf-1.so.0()(64bit),它被软件包 subversion-1.14.2-1.x86_64 需要
---> 软件包 subversion-libs.x86_64.0.1.7.14-16.el7 将被 取代
--> 正在处理依赖关系 subversion-libs(x86-64) = 1.7.14-16.el7,它被软件包 mod_dav_svn-1.7.14-16.el7.x86_64 需要
--> 正在检查事务
---> 软件包 libserf.x86_64.0.1.3.9-1.el7 将被 安装
---> 软件包 mod_dav_svn.x86_64.0.1.7.14-16.el7 将被 升级
---> 软件包 mod_dav_svn.x86_64.0.1.14.2-1 将被 更新
--> 解决依赖关系完成
依赖关系解决
=============================================================================================================================================================================================
Package 架构 版本 源 大小
=============================================================================================================================================================================================
正在安装:
subversion x86_64 1.14.2-1 WandiscoSVN 2.7 M
替换 subversion-libs.x86_64 1.7.14-16.el7
为依赖而安装:
libserf x86_64 1.3.9-1.el7 WandiscoSVN 52 k
为依赖而更新:
mod_dav_svn x86_64 1.14.2-1 WandiscoSVN 88 k
事务概要
=============================================================================================================================================================================================
安装 1 软件包 (+1 依赖软件包)
升级 ( 1 依赖软件包)
总下载量:2.8 M
Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
(1/3): libserf-1.3.9-1.el7.x86_64.rpm | 52 kB 00:00:02
(2/3): mod_dav_svn-1.14.2-1.x86_64.rpm | 88 kB 00:00:02
(3/3): subversion-1.14.2-1.x86_64.rpm | 2.7 MB 00:00:07
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
总计 278 kB/s | 2.8 MB 00:00:10
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : libserf-1.3.9-1.el7.x86_64 1/5
正在安装 : subversion-1.14.2-1.x86_64 2/5
正在更新 : mod_dav_svn-1.14.2-1.x86_64 3/5
清理 : mod_dav_svn-1.7.14-16.el7.x86_64 4/5
正在删除 : subversion-libs-1.7.14-16.el7.x86_64 5/5
验证中 : subversion-1.14.2-1.x86_64 1/5
验证中 : libserf-1.3.9-1.el7.x86_64 2/5
验证中 : mod_dav_svn-1.14.2-1.x86_64 3/5
验证中 : mod_dav_svn-1.7.14-16.el7.x86_64 4/5
验证中 : subversion-libs-1.7.14-16.el7.x86_64 5/5
已安装:
subversion.x86_64 0:1.14.2-1
作为依赖被安装:
libserf.x86_64 0:1.3.9-1.el7
作为依赖被升级:
mod_dav_svn.x86_64 0:1.14.2-1
替代:
subversion-libs.x86_64 0:1.7.14-16.el7
完毕!
(venv) [root@node-1 ~]#
(venv) [root@node-1 ~]# svn --version
svn,版本 1.14.2 (r1899510)
编译于 Oct 25 2022,10:40:16 在 x86_64-redhat-linux-gnu
Copyright (C) 2022 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/
可使用以下的版本库访问模块:
* ra_svn : 使用 svn 网络协议访问版本库的模块。 - 使用 Cyrus SASL 认证
- 处理“svn”方案
* ra_local : 访问本地磁盘的版本库模块。
- 处理“file”方案
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
- using serf 1.3.9 (compiled with 1.3.9)
- 处理“http”方案
- 处理“https”方案
The following authentication credential caches are available:
* Gnome Keyring
* GPG-Agent
- 备份本地库
(venv) [root@node-1 ~]# svnadmin dump /home/svn/my-repo > my_repo-20230509.dump
* 已转存版本 0。
* 已转存版本 1。
* 已转存版本 2。
* 已转存版本 3。
* 已转存版本 4。
* 已转存版本 5。
* 已转存版本 6。
* 已转存版本 7。
* 已转存版本 8。
* 已转存版本 9。
* 已转存版本 10。
* 已转存版本 11。
* 已转存版本 12。
* 已转存版本 13。
* 已转存版本 14。