Удалить регистрацию Chocolatey без удаления приложения


22

Я хочу иметь возможность choco upgrade all -yобновлять почти все мои пакеты Chocolatey.

Некоторые пакеты представляют приложения, которые я хочу установить, но я больше не хочу, чтобы они обновлялись, по крайней мере, автоматически choco upgrade allкомандой.

Могу ли я удалить пакет из Chocolatey, не удаляя приложение? Это имело бы желаемый эффект.

Или я могу достичь своей цели лучше?


3
Вы можете использовать пин-код (см. choco pin -hПодробности), и Chocolatey не будет пытаться обновить пакет. github.com/chocolatey/choco/wiki/CommandsPin
ferventcoder

Новая опция синхронизируется в pro / business - chocolatey.org/docs/features-synchronize
ferventcoder

Ответы:


30

У вас есть два варианта:

  1. Вы можете использовать контактный (см шоколадно штифта -h для деталей) и шоколадный не будет пытаться обновить пакет: choco pin add -n=packageName. После этого команда choco upgrade allпропустит пакет с именем packageName.

  2. Вы можете удалить приложение из базы данных Chocolatey (необходимо удалить папку приложения). Все приложения метаданные хранятся в папке C:\ProgramData\chocolatey\lib\<package-name>, например: C:\ProgramData\chocolatey\lib\adobereader.

    Осторожно удалите каталог, потому что иногда приложения устанавливаются в папку шоколадных приложений, например: C:\ProgramData\chocolatey\lib\javadecompiler-gui\jd-gui-windows-1.4.0


Похоже, это работает. И это не имеет побочных эффектов для шоколада? Нет конфигурационных файлов, которые нужно изменить?
Клас Меллборн

1
Шоколад хранит все данные пакетов в libпапке, так что вы можете безопасно удалить эти папки.
agabrys

2
Вариант 2, я не буду редактировать это (так как это уже принятый ответ), но вы также можете прикрепить пакеты, которые вы не хотите обновлять. Это гораздо лучшее решение по сравнению с необходимостью вручную пойти и удалить файлы.
ferventcoder

@agabrys, если вы хотите, чтобы я отредактировал ответ, я могу добавить информацию о пин-коде. Или вы можете отредактировать его.
ferventcoder

2
Я изменил ответ. Всегда смело
расширяйте

28

Пример (удалить пакет myExamplePackageиз шоколада без удаления)

choco uninstall myExamplePackage -n --skipautouninstaller

Из шоколадных документов :

ПРИМЕЧАНИЕ. Пакет с ошибкой удаления можно удалить с помощью -n --skipautouninstallerфлагов. Это удалит пакет из шоколада без попытки удаления программы.


Я не могу понять, как использовать команду - вы можете сказать мне полную команду для пакета?
user598527

1
конечно - я добавил пример к посту.
Патрик Хек

Это больше не работает с текущей версией Chocolatey
Mica

1
Отлично сработало для меня, спасибо!
spongessuck
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.