Як видалити всі невикористані версії пакету macports одразу


32

Підтримуючи пакети макпортів, я вважаю за краще видаляти старі пакунки, коли замінюю їх новими. Однак з часом оновлення пакетів у вас виникають такі проблеми, як:

$ sudo port uninstall -f postgresql83
--->  The following versions of postgresql83 are currently installed:
--->    postgresql83 @8.3.3_0
--->    postgresql83 @8.3.7_0
--->    postgresql83 @8.3.8_1 (active)
Error: port uninstall failed: Registry error: Please specify the full version as recorded in the port registry.

Чи є команда macports одразу видалити всі версії пакета?

Відповіді:


38

Якщо ви хочете видалити всі старі (неактивні) версії, спробуйте це:

port -y -u uninstall
  # if you like what you see, change “port -y” to “sudo port”

Якщо ви хочете сказати, що ви хочете видалити всі версії (неактивні та активні) (наприклад) postgresql83порту, то спробуйте це:

port -y uninstall installed and postgresql83
  # if you like what you see, change “port -y” to “sudo port”

Це працювало для мене, але занадто поганий порт не обробляє оновлення залежності залежно від postgres84 автоматично.
Дана Сане

2
@Dana the Sane Якщо ви маєте на увазі автоматичне видалення пакетів, які залежать від postgres84, ви можете використовувати аргумент --follow-залежних.
Нік

@Nick Я спробую, що наступного разу я щось видалю.
Дана Сане

Другий підхід відмінно працює для мене, але перший один з , -uздається, дає таке ж попередження про кілька версій встановлюється , як якщо б я не використовував -uвзагалі
матові б

Ці команди не працюють (на Mac OSX Mavericks).
bzero

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.