我正在尝试找到一种dch
以非交互模式运行的方法,以便将debian/changelog
文件创建和操作合并到 shell 脚本中。
似乎只有在使用参数运行它时-r ""
它才会起作用(如指定这里)。然而,我需要使用不同的参数。
答案1
发现问题,
如果它没有获得它认为必需的所有信息,它似乎dch
会打开一个编辑器。因此,为了在debian/changelog
不打开编辑器的情况下创建一个,我发现以下选项组合就足够了:
dch --create --distribution unstable --package "pkgpkg" --newversion 0.0.0.0-0.test "some nice message"
答案2
这取决于你打算用它做什么。dch
选择VISUAL
/EDITOR
变量来确定编辑器,唯一的条件是它理解/忽略形式的初始选项+n
。所以我可以这样做:
$ cat edit.sh
#! /bin/bash
shift
sed -i 's/UNRELEASED/trusty/' "$@"
$ VISUAL='bash edit.sh' dch -i
$ head -3 debian/changelog
mypackage (1.24ubuntu1) trusty; urgency=medium
*
并实现合理的自动化运行。