微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – 构建debian软件包时如何忽略文件/目录?

我已经制作了一些debian软件包来简化新服务器上的配置部署,并希望将它们放入SVN源代码控制中.问题是SVN为源树中的每个子目录创建了一个.svn目录,因此我无法在源树’dpkg-deb –build’上构建包,因为’.svn’目录将包含在结果中包.到目前为止,当我想构建一个包时,我必须将目录导出到另一个地方并从那里构建.

有没有快速方法让’dpkg-deb –build’忽略.svn目录?

解决方法

我的理解是你不应该首先使用dpkg-deb –build构建一个debian包.如果您使用dpkg-buildpackage,则不必担心包中包含.svn目录.

见:http://raphaelhertzog.com/2010/12/17/do-not-build-a-debian-package-with-dpkg-b/

可能有更好的方法,但这里有一个我没有彻底测试过:

使用dh_make创建一个骨架debian包.将您的文件放在debian目录上方的目录中.

编辑生成的dirs文件,并将要移动文件的路径放入,例如:

/opt/mypackage
/usr/local/bin

然后在规则文件中,删除$(MAKE)代码并将install:build部分设置为如下所示:

install: build
  dh_testdir
  dh_testroot
  dh_clean -k 
  dh_installdirs

  # copy files into staging area
  rsync --exclude .svn -a mypackage/ debian/tmp/opt/mypackage/

原文地址:https://www.jb51.cc/linux/397933.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐