Есть ли способ получить исходные различия между локально установленным пакетом и его обновленным?
Например, предположим, что в вашей системе установлен пакет linux-libc-dev и
sudo apt-get update && sudo apt-get upgrade
показывает
The following packages will be upgraded:
linux-libc-dev
, но вы хотите проверить перед его обновлением точные изменения, которые были сделаны по сравнению с вашей локальной версией одного и того же пакета.
Как мы можем сделайте это?
Если вы хотите увидеть различия в файлах в архивах пакетов, извлеките их файлы md5sums, отсортируйте их и откройте их, а затем сможете сузить список фактических файлов, чтобы сравнить их.
Не могут быть «точные» изменения, но apt-listchanges
перечисляет записи изменений для изменений, которые были сделаны с установленной версии.
Он работает, добавляя шаг после того, как вы закончите загрузку новых пакетов, но до начала установки, где он показывает вам запись изменений для каждого пакета, который должен быть обновлен. Затем вы можете продолжить или отменить. Вы можете установить его с помощью
sudo apt-get install apt-listchanges
, а затем установить его с помощью
sudo dpkg-reconfigure apt-listchanges
Вот один (возможно, не оптимальный) способ UDD :
Pull-updates ветвь для вашей версии (предполагая Lucid), что (предположение следует) должно содержать последние SRU:
bzr branch lp: ubuntu / lucid-updates / имя_пакета
Получить изменения, внесенные в последнюю редакцию, которые (предположение следует) должны соответствовать к последнему SRU:
bzr diff -c`bzr revno`
Afaik единственный способ сделать это - получить источник и сделать diff своим. Вы можете получить фактический источник, используемый для компиляции пакетов с помощью apt-get. fx:
apt-get source gwibber = 2.30.2-0ubuntu3 gwibber = 2.30.0.1-0ubuntu1 diff -rupN gwibber-2.30.0.1 / gwibber-2.30.2 /
[ ! d3]Это выведет все различия между всеми файлами в стандартном формате патча.
Не могут быть «точные» изменения, но apt-listchanges
перечисляет записи изменений для изменений, которые были сделаны с установленной версии.
Он работает, добавляя шаг после того, как вы закончите загрузку новых пакетов, но до начала установки, где он показывает вам запись изменений для каждого пакета, который должен быть обновлен. Затем вы можете продолжить или отменить. Вы можете установить его с помощью
sudo apt-get install apt-listchanges
, а затем установить его с помощью
sudo dpkg-reconfigure apt-listchanges
Если вы хотите увидеть различия в файлах в архивах пакетов, извлеките их файлы md5sums, отсортируйте их и откройте их, а затем сможете сузить список фактических файлов, чтобы сравнить их.
Вот один (возможно, не оптимальный) способ UDD :
Pull-updates ветвь для вашей версии (предполагая Lucid), что (предположение следует) должно содержать последние SRU:
bzr branch lp: ubuntu / lucid-updates / имя_пакета
Получить изменения, внесенные в последнюю редакцию, которые (предположение следует) должны соответствовать к последнему SRU:
bzr diff -c`bzr revno`
Afaik единственный способ сделать это - получить источник и сделать diff своим. Вы можете получить фактический источник, используемый для компиляции пакетов с помощью apt-get. fx:
apt-get source gwibber = 2.30.2-0ubuntu3 gwibber = 2.30.0.1-0ubuntu1 diff -rupN gwibber-2.30.0.1 / gwibber-2.30.2 /
[ ! d3]Это выведет все различия между всеми файлами в стандартном формате патча.
Если вы хотите увидеть различия в файлах в архивах пакетов, извлеките их файлы md5sums, отсортируйте их и откройте их, а затем сможете сузить список фактических файлов, чтобы сравнить их.
Не могут быть «точные» изменения, но apt-listchanges
перечисляет записи изменений для изменений, которые были сделаны с установленной версии.
Он работает, добавляя шаг после того, как вы закончите загрузку новых пакетов, но до начала установки, где он показывает вам запись изменений для каждого пакета, который должен быть обновлен. Затем вы можете продолжить или отменить. Вы можете установить его с помощью
sudo apt-get install apt-listchanges
, а затем установить его с помощью
sudo dpkg-reconfigure apt-listchanges
Afaik единственный способ сделать это - получить источник и сделать diff своим. Вы можете получить фактический источник, используемый для компиляции пакетов с помощью apt-get. fx:
apt-get source gwibber = 2.30.2-0ubuntu3 gwibber = 2.30.0.1-0ubuntu1 diff -rupN gwibber-2.30.0.1 / gwibber-2.30.2 /
[ ! d3]Это выведет все различия между всеми файлами в стандартном формате патча.
Вот один (возможно, не оптимальный) способ UDD :
Pull-updates ветвь для вашей версии (предполагая Lucid), что (предположение следует) должно содержать последние SRU:
bzr branch lp: ubuntu / lucid-updates / имя_пакета
Получить изменения, внесенные в последнюю редакцию, которые (предположение следует) должны соответствовать к последнему SRU:
bzr diff -c`bzr revno`
Если вы хотите увидеть различия в файлах в архивах пакетов, извлеките их файлы md5sums, отсортируйте их и откройте их, а затем сможете сузить список фактических файлов, чтобы сравнить их.
Не могут быть «точные» изменения, но apt-listchanges
перечисляет записи изменений для изменений, которые были сделаны с установленной версии.
Он работает, добавляя шаг после того, как вы закончите загрузку новых пакетов, но до начала установки, где он показывает вам запись изменений для каждого пакета, который должен быть обновлен. Затем вы можете продолжить или отменить. Вы можете установить его с помощью
sudo apt-get install apt-listchanges
, а затем установить его с помощью
sudo dpkg-reconfigure apt-listchanges
Afaik единственный способ сделать это - получить источник и сделать diff своим. Вы можете получить фактический источник, используемый для компиляции пакетов с помощью apt-get. fx:
apt-get source gwibber = 2.30.2-0ubuntu3 gwibber = 2.30.0.1-0ubuntu1 diff -rupN gwibber-2.30.0.1 / gwibber-2.30.2 /
[ ! d3]Это выведет все различия между всеми файлами в стандартном формате патча.
Вот один (возможно, не оптимальный) способ UDD :
Pull-updates ветвь для вашей версии (предполагая Lucid), что (предположение следует) должно содержать последние SRU:
bzr branch lp: ubuntu / lucid-updates / имя_пакета
Получить изменения, внесенные в последнюю редакцию, которые (предположение следует) должны соответствовать к последнему SRU:
bzr diff -c`bzr revno`
Не могут быть «точные» изменения, но apt-listchanges
перечисляет записи изменений для изменений, которые были сделаны с установленной версии.
Он работает, добавляя шаг после того, как вы закончите загрузку новых пакетов, но до начала установки, где он показывает вам запись изменений для каждого пакета, который должен быть обновлен. Затем вы можете продолжить или отменить. Вы можете установить его с помощью
sudo apt-get install apt-listchanges
, а затем установить его с помощью
sudo dpkg-reconfigure apt-listchanges
Если вы хотите увидеть различия в файлах в архивах пакетов, извлеките их файлы md5sums, отсортируйте их и откройте их, а затем сможете сузить список фактических файлов, чтобы сравнить их.
Вот один (возможно, не оптимальный) способ UDD :
Pull-updates ветвь для вашей версии (предполагая Lucid), что (предположение следует) должно содержать последние SRU:
bzr branch lp: ubuntu / lucid-updates / имя_пакета
Получить изменения, внесенные в последнюю редакцию, которые (предположение следует) должны соответствовать к последнему SRU:
bzr diff -c`bzr revno`
apt-cache show package_name | grep Источник:
.
– mgunes
20 October 2010 в 05:09
& lt; имя_пакета & gt;
, поэтому полученный результат не работает в некоторых пакетах: bzr branch lp: ubuntu / lucid-updates / $ (apt-cache show linux-libc-dev | grep -m 1 Источник: | awk & quot; {print \ $ 2} & quot;)
= & gt; bzr: ОШИБКА: Недопустимый URL-адрес, передаваемый для транспорта: «bzr + ssh: //bazaar.launchpad.net/+branch/ubuntu/lucid-updates/linux" ;: никаких поддерживаемых схем
– Gödel
20 October 2010 в 05:21
Afaik единственный способ сделать это - получить источник и сделать diff своим. Вы можете получить фактический источник, используемый для компиляции пакетов с помощью apt-get. fx:
apt-get source gwibber = 2.30.2-0ubuntu3 gwibber = 2.30.0.1-0ubuntu1 diff -rupN gwibber-2.30.0.1 / gwibber-2.30.2 /
[ ! d3]Это выведет все различия между всеми файлами в стандартном формате патча.