如何降级到Subversion 1.6?


24

我正在尝试将Subversion从1.7降级到1.6 sudo apt-get install subversion=1.6.17dfsg-3ubuntu3。这似乎不起作用。

在不中断安装一半的情况下如何执行此操作的任何想法?

Answers:


15

您可以尝试将所有输入更改/etc/apt/sources.list为精确,例如

deb http://extras.ubuntu.com/ubuntu precise main
deb http://us.archive.ubuntu.com/ubuntu/ precise main universe restricted multiverse

然后运行:

sudo apt-get remove subversion
sudo apt-get update
sudo apt-get install subversion

如果为您准备了Subversion 1.6的安装,那么您将需要还原您的sources.list,并将Subversion锁定在1.6,您可以运行 echo subversion hold | sudo dpkg --set-selections

强烈不建议使用这种类型的安装,但有时这是最简单的选择。如果遇到各种疯狂的冲突,那么您最好的选择就是直接切换回Ubuntu 12.04。


1
像魅力一样工作!非常感谢,我想停留在12.10
LFAY,2012年

1
我没有更改条目,只是添加了建议的条目,因此我可以在Synaptic中选择需要安装的组件。之后,我将其锁定。
Fedir RYKHTIK

7

如果安装了Synaptic Package Manager,则可以将Subversion强制降级到较早的发行版。只需在Synaptic中查找Subversion,右键单击“属性”,转到“版本”选项卡,然后检查可用的版本。

如果幸运的话,您会发现1.7版本(在我的情况下为1.7.5)和1.6版本(1.6.17)。关闭“属性”窗口,从列表中选择“ Subversion”,转到“程序包->强制版本”菜单项,然后选择所需的版本。

如果一切顺利,您只需要担心Ubuntu将软件更新到最新版本即可。为了坚持使用1.6版本,您可以锁定此更新:程序包->锁定版本。瞧,您又回到了旧版本1.6 :)


1
很好的答案,弗洛林。欢迎来到Ask Ubuntu!保持!:D
Mochan 2012年

我在属性中仅看到1.7版本,并且“强制版本”菜单为灰色。什么决定可用的版本?
Quantum7

@ Quantum7我的同一个东西。我应该怎么做才能获得其他版本?
Gtx

在具有Synaptic Package Manager 0.80.2和Subversion 1.7.9-1的Ubuntu 13.10中,这对我都不起作用。
malisokan

7

通过从http://packages.ubuntu.com手动下载12.04 svn和依赖程序包,我已成功降级到1.6。我首先卸载了1.7版。然后,我按照列出的顺序安装了Ubuntu 12.04软件包。

  1. libdb4.8_4.8.30-11ubuntu1_amd64.deb
  2. libsvn1_1.6.17dfsg-3ubuntu3_amd64.deb
  3. subversion_1.6.17dfsg-3ubuntu3_amd64.deb
  4. subversion-tools_1.6.17dfsg-3ubuntu3_all.deb

    其他解决方案对我不起作用。


非常感谢,因为我在amd64上安装了Linux Mint 14 Nadia,这是最好的解决方案。
Fedir RYKHTIK

对于子剪辑,您应该下载:libsvn-java_1.6.17dfsg-3ubuntu3_amd64.deb
Fedir RYKHTIK 2013年

5

在其他帖子的帮助下,我想我想出了一种使用Synaptic固定它的更简单方法(因此请首先确保已安装)。

  1. 将以下行添加到/etc/apt/sources.list

    deb http://us.archive.ubuntu.com/ubuntu precise main
    

    这将确保您至少有两个版本可供选择,即1.7和1.6。

  2. sudo apt-get update
    
  3. 转到程序包管理器,搜索subversion并选择它。

  4. 从菜单中选择package- > force-version选择1.6右键单击 -> properties- > version选择1.6

  5. 安装套件

  6. 再次选择软件包,然后菜单 ->锁定版本

    这是为了防止自动更新到更高版本。

就是这个。祝好运。

回忆:这使用以前的答案提供了一种更简单直接的方法。


3

svn 1.7客户端与svn 1.6服务器完全兼容。

你只需要做

$ svn updgrade working_dir1 working_dir2 ...

与往常一样,升级保留本地修改。查看svn帮助升级


2
问题是当多个客户端版本与同一工作目录一起使用时。例如,当前的svnkit软件包(1.3.5)与svn 1.6兼容,因此我所有的Eclipse工作区都需要一个1.6客户端进行更新。
Quantum7

2

添加deb http://us.archive.ubuntu.com/ubuntu precise main到您的中/etc/apt/sources.list

通过删除当前的SVN apt-get remove libsvn1 subversion

如果需要,清除文件dpkg --purge libsvn1 subversion

apt-get updateapt-get -t precise install libsvn1 subversion

您可能要先使用来测试安装apt-get -t precise -s install libsvn1 subversion


这几乎与答案1相同。想要详细说明任何附加值?
2013年

当然。在答案#1中,subversion的依赖关系将不会被删除,因此它将在安装时产生依赖项错误。我已经尝试过了,这就是为什么我发布了解释。希望能有所帮助。
Andrei

0

我通常针对Ubuntu 18.04执行以下操作,在这种情况下,由于“格式10”提交模型,因此将安装Subversion 1.6.17。因此,对于ubuntu,我从ubuntu 12.04和64位精确穿山甲下载了二进制文件:

https://ubuntu.pkgs.org/12.04/ubuntu-main-amd64/libdb5.1_5.1.25-11build1_amd64.deb.html
https://ubuntu.pkgs.org/12.04/ubuntu-main-amd64/libaprutil1_1.3.12+dfsg-3_amd64.deb.html
https://ubuntu.pkgs.org/12.04/ubuntu-main-amd64/libapr1_1.4.6-1_amd64.deb.html
https://ubuntu.pkgs.org/12.04/ubuntu-main-amd64/libsvn1_1.6.17dfsg-3ubuntu3_amd64.deb.html
https://ubuntu.pkgs.org/12.04/ubuntu-main-amd64/subversion_1.6.17dfsg-3ubuntu3_amd64.deb.html

然后在cli中使用下载目录中的以下命令执行:

sudo apt-get remove subversion
sudo dpkg -i libdb5.1_5.1.25-11build1_amd64.deb
sudo dpkg -i libaprutil1_1.3.12+dfsg-3_amd64.deb
sudo dpkg -i libapr1_1.4.6-1_amd64.deb
sudo dpkg -i libsvn1_1.6.17dfsg-3ubuntu3_amd64.deb
sudo dpkg -i subversion_1.6.17dfsg-3ubuntu3_amd64.deb
sudo apt-cache policy subversion

因此,第一个命令保证没有子程序和依赖项,最后一个命令帮助查看您从该软件包中安装了什么。内部命令会安装每个下载的软件包,如果有所不同或缺失,则会提示您。毫无疑问,您可以使用我建议下载的网站来寻找依赖关系,并查看有关该软件包的其他详细信息。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.