特定のフォルダーまたはそのフォルダーのサブフォルダー内に表示される場合を除い.gitignore
て、特定の拡張子を持つすべてのファイルが無視されるようにファイルを構成しようとしています。私は動作しない次のことを試しました:
*.lib
!Libraries/
私が持っている2番目の質問は、否定された除外は直前のルールにのみ適用されるのか、それともその時点までに定義したすべてのルールを適用するのかということです。
これはほとんど私の質問に答えますが、サブフォルダには役立ちません。
私はあなたが意味したのは*.lib
、彼らが中にいるときを除いてすべてを無視することだと思います/Libraries
、これを試してみてください:
# The root directory's .gitignore
*.lib
!/Libraries/*.lib
# The .gitignore under /Libraries directory
!*.lib
は.gitignore
上から下に解析されます。どのルールでも以前のルールを上書きできます。
二重アスタリスク を使用してみてください**
。あなたの.gitignore
かもしれない仕事でこのような何か:
*.lib
!/Libraries/**/*.lib
2 つのアスタリスクは、サブディレクトリの任意の組み合わせと一致します。この回答は、それがどのようにうまく機能するかを説明しています。
.gitignore
2 番目の質問については、@Tuxdude が正しいです。ルールは、解析される方法により、その時点まで他のルールをオーバーライドします。