Вопрос

При создании пакета Debian мы используем файл debian/mypackagename.install, чтобы указать инструменту упаковки debhelper, куда копировать файлы и папку.

Проблема в том, что папки содержат папку .svn, которая копируется в дерево пакетов и, наконец, отправляется на целевую машину!существует ли стандартный способ исключить папки .svn при создании пакета?

Это было полезно?

Решение

Я не знаю, как выглядит ваша система сборки в деталях, но чтобы исключить .svn (CVS, .git и т.д.), вы можете использовать -X вариант dh_install:

$ dh_install -X .svn

или экспортировать переменную DH_ALWAYS_EXCLUDE в debian/rules файл:

$ cat debian/rules 
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.

# Uncomment this to turn on verbose mode.
# export DH_VERBOSE=1

export DH_ALWAYS_EXCLUDE=CVS:.svn

%:
    dh  $@

Другие советы

Как @jb_nizet исправить, вы можете использовать svn export, чтобы получить каталог без всех папок .svn.Если вы не можете использовать экспорт, вы можете использовать find -name .svn -and -type d -exec rm -rf {} + для удаления всех папок .svn в каталоге рекурсивно.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top