.dockerignore所有子文件夹,但不是文件夹本身的文件

时间:2016-09-15 12:56:15

标签: git docker

我有一个像下面这样的文件夹结构。我想忽略.git的所有子文件夹(及其所有内容),但包括直接在.git中的所有文件(例如FETCH_HEAD和HEAD)。

如何在.dockerignore文件中写下。

.git
├── COMMIT_EDITMSG
├── FETCH_HEAD
├── HEAD
├── description
├── hooks
│   ├── applypatch-msg.sample
│   ├── commit-msg.sample
│   ├── post-update.sample
│   ├── pre-applypatch.sample

3 个答案:

答案 0 :(得分:2)

一种可能性是使用!排除要忽略的文件。

.git/*/
!.git/HEAD
!.git/FETCH_HEAD

答案 1 :(得分:2)

根据documentation,您只能忽略子目录:

main()

您不必手动排除直接位于foo()目录中的文件。

答案 2 :(得分:1)

自docker 1.7起,.dockerignore file支持例外:

*/*
!FETCH_HEAD
!HEAD