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/

相关文章

1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...
1 删除0字节文件 find -type f -size 0 -exec rm -rf {} ...
## 步骤 1:安装必要的软件包 首先,需要确保系统已安装 `dh...