Невозможно понизить Subversion без большой работы

Я пытаюсь отследить ошибку в SVN. Мне нужно иметь возможность переключаться между SVN 1.7.x и 1.8.x, чтобы попробовать тесты. Я использую пакеты WANdisco.

/ etc / issue

Ubuntu 12.10 \n \l

/etc/apt/source.list.d/WANdisco.list

# WANdisco Open Source Repo
deb http://opensource.wandisco.com/ubuntu precise svn18
deb http://opensource.wandisco.com/ubuntu precise svn17

Я понимаю, что я использую Quantal, но в списке есть Precise. Это работает для меня (tm), так как WANdisco не имеет квантово-специфичных пакетов.

Когда у меня установлена ​​Subversion = 1.7.14-1 + WANdisco, я могу

sudo apt-get install subversion
sudo apt-get install subversion=1.8.5-1+WANdisco

, и любой из них приводит меня к Subversion 1.8.5-1 + WANdisco без проблем.

1113 Движение в другом направлении - важная операция. После долгих проб и ошибок вот что я обнаружил / сделал вывод, что для меня это минимальный рабочий метод:

sudo apt-get autoremove subversion
sudo apt-get clean
sudo vim /etc/apt/sources.list.d/WANdisco.list
# deb http://opensource.wandisco.com/ubuntu precise svn18
sudo apt-get install subversion

Насколько я понимаю, я должен полностью удалить SVN 1.8.5 и его зависимости (libsvn1 ), удалите кэшированные пакеты svn 1.8.5 И удалите информацию apt-get о том, что svn 1.8.x даже доступен. Только тогда он соизволит установить 1.7.14.

Мой вопрос: когда установлен 1.8.5, почему это

sudo apt-get install subversion=1.7.14-1+WANdisco

не работает? То, что я получаю, это

user@user-VirtualBox:/etc/apt/sources.list.d$ sudo apt-get install subversion=1.7.14-1+WANdisco
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 subversion : Depends: libsvn1 (= 1.7.14-1+WANdisco) but 1.8.5-1+WANdisco is to be installed
E: Unable to correct problems, you have held broken packages.
user@user-VirtualBox:/etc/apt/sources.list.d$

Я получаю «должен быть установлен», если я не выполняю точно все три шага, описанных выше: автоудаление, очистка, закомментирование строки пакета.

Я заметил, что установочный скрипт WANdisco создает sources.list.d / WANdisco-svn1 [78], поэтому я попытался использовать два файла вместо одного; Мысль о том, что, возможно, упорядочение строк в WANdisco.list создавало приоритетный порядок. Это не удалось понизить таким же образом. Похоже, что если apt-get знает, что существует 1.8.5, он предпочтет больше, чем 1.7.14.

Если есть более простой способ, я бы очень хотел знать.

0
задан 20 December 2013 в 00:21

1 ответ

Вы должны указать apt-get понизить все зависимости:

sudo apt-get install subversion=1.7.14-1+WANdisco libsvn1=1.7.14-1+WANdisco

, иначе apt не понизит их. Для этих операций я предпочитаю aptitude, так как он позволяет мне решать проблемы вручную.

0
ответ дан 20 December 2013 в 00:21

Другие вопросы по тегам:

Похожие вопросы: