GNU/Linux >> Linux の 問題 >  >> Linux

debian パッケージをビルドするときにファイル/ディレクトリを無視するにはどうすればよいですか?

解決策 1:

ソース Debian パッケージに入れるファイルを除外するには、ファイルを作成する必要があります:

debian/source/options

あなたの場合、dpkg-sourceに渡したいオプションを入力してください:

tar-ignore = ".svn/"

dpkg-source のマニュアル ページを参照してください。

解決策 2:

私の理解では、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

次に、 rules で ファイルから、$(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/

解決策 3:

dpkg-buildpackage を使用する場合は、ここで文書化する価値があります -i があること 物事を無視するように切り替えます。つまり、-i .svn を使用します .svn ディレクトリを無視します。


Linux
  1. ファイルまたはディレクトリをコピーするときに所有権とファイルのアクセス許可をそのまま維持する方法

  2. Linux でファイルとディレクトリのサイズを確認するにはどうすればよいですか?

  3. ビルド時にbazelに外部ストレージを使用させるにはどうすればよいですか?

  1. Debian –ディストリビューションをアップグレードするときに「廃止された」パッケージを処理する方法は?

  2. tree -a を取得して .git ディレクトリを無視するには?

  3. .fuse_hidden* ファイルを削除するには?

  1. .svn ディレクトリを無視するように `find` を取得するにはどうすればよいですか?

  2. inode でファイルを操作できないのはなぜですか?

  3. ディレクトリを grep -R から除外するにはどうすればよいですか?