PDF 画像を含む LaTeX ドキュメントを作成しています。そのため、生成された PDF は無視しますが、ソース PDF は無視したいと思います。私は実際にこれを行うことができましたが、最初に試したことがうまくいかなかったので、その理由を知りたいです.
ドキュメントには、部分的に次のように記載されています。
パスと同じディレクトリまたは任意の親ディレクトリにある .gitignore ファイルから読み取られたパターン。上位レベルのファイル (ワーク ツリーのトップレベルまで) のパターンは、ディレクトリまでの下位レベルのファイルのパターンによってオーバーライドされます。ファイルを含みます。これらのパターンは、.gitignore ファイルの場所に相対的に一致します。プロジェクトは通常、そのリポジトリにそのような .gitignore ファイルを含み、プロジェクト ビルドの一部として生成されたファイルのパターンを含みます。
.gitignore
...しかし、浅いファイルを上書きする深いファイルを取得できないようです。私が見ているものを再現するためのコマンドの簡単なシーケンスは次のとおりです。
~% mkdir git-test
~% cd git-test
~/git-test% git init
Initialized empty Git repository in /home/dmwit/git-test/.git/
~/git-test% echo '*.pdf' >.gitignore
~/git-test% mkdir images
~/git-test% touch images/.gitignore
~/git-test% git add .gitignore images/.gitignore
~/git-test% git commit -m "example .gitignore files"
[master (root-commit) 8c7e91d] example .gitignore files
2 files changed, 1 insertion(+)
create mode 100644 .gitignore
create mode 100644 images/.gitignore
~/git-test% touch images/foo.pdf
~/git-test% git status
# On branch master
nothing to commit, working directory clean
この後、作業ディレクトリがきれいなのはなぜですか? の空のファイルが の.gitignore
ファイルをgit-test/images/
上書きしてimages/
、そのディレクトリの何も無視されないようにすべきではありませんか? (また、価値があるのは、 を削除した後git-test/.gitignore
、新しいpdf
が に表示されるgit status
ため、グローバルな除外がこれに影響しているとは思わないことです。)