我可以配置 dpkg 在与配置文件更新发生冲突时启动 kdiff 吗?

我可以配置 dpkg 在与配置文件更新发生冲突时启动 kdiff 吗?

我们都看到了……

Configuration file 'blah/blah/blah.conf'
==> Modified (by you or by a script) since installation.
==> Package distributor has shipped an updated version.
 What would you like to do about it ?  Your options are:
   Y or I  : install the package maintainer's version
   N or O  : keep your currently-installed version
     D     : show the differences between the versions
     Z     : start a shell to examine the situation
The default action is to keep your current version.

有时,差异相当大。我已经修改了我的工作配置,但我还想看看哪些配置选项发生了变化(并从最新的库存配置文件中获取最新注释)。所以,我不能只从两者中挑选一个……我想合并

我使用 KDiff3 来做这件事。但必须打开另一个终端窗口并复制/粘贴名称,这很繁琐现存的配置文件和dpkg-新版本。

我知道我可以设置像 PAGER 和 EDITOR 这样的环境变量,并且像 crontab 这样的程序会忠实地使用我喜欢的编辑器和分页器。有没有办法告诉 dpkg 使用某个程序来“显示差异”,以便它启动 KDiff3,让我将内容合并到我的工作配置文件中?

答案1

我敢打赌,D它使用硬编码的diff | pager,即只读模式只是为了显示差异。然后选择YN保留或替换整个文件。没有交互式合并的可能性,您无法重载它。部分原因是Z,但您必须按照您所做的方式进行操作。

其中有所有文件的 md5sum,.deb所以我猜这就是为什么没有这样的选项的原因,因为如果 md5 不匹配,包的安装就会失败。

相关内容