2017-05-15 12 views
1

ソフトウェアプログラムのコンパイルに必要な2種類のファイルを含むフォルダがあります。gitは拡張子を除くすべてのファイルを無視しますが、拡張子のパターンは無視します

# ignore everything (to ignore all auto-generated files without listing their extensions) 
* 

# but do not ignore (required to compile) 
!*.abc 
!*.xyz 

# but ignore if file name matches pattern (auto-generated file after compilation) 
*generic.abc 

あり:ソフトウェアプログラムをコンパイルすると、それは私が追跡したくないが、これらのファイルのいずれかが、私が持っているプログラムをコンパイルするために必要なファイルと同じ拡張子のあるファイルを自動生成します2つの指定されたファイル拡張子を除いてすべてを無視する方法ですが、特定の命名規則が先行する場合は、指定されたファイル拡張子を無視しますか?注: "generic.abc"ファイルの前には一意のテキストがあります。そのため、 "generic.abc"という規則を無視したいのです。前もって感謝します!

+0

可能であれば、除外ルールをより明示的にすることをおすすめします。しかし、あなたが本当に何をしているのかを除いてこのアプローチを本当に望むなら、あなたが指定したルールはうまくいくようです(少なくとも私が一緒に投げたテストでは)。私はあなたがそれらのルールを使用しようとするときにいくつかの問題を発見したと仮定します。どのような予期しない行動を観察しましたか? –

+0

@MarkAdelsberger generic.abcファイルを追跡しているようです...上記のコードを.gitignoreファイルに追加する前に最初は追跡されましたが、 'git rm --cached generic.abc'で削除しましたが、それでも表示されます'git status'と入力したとき – Prevost

+0

' git rm --cached generic.abc'の後に 'deleted'(以前のコミットにあったことだけを示しています)またはuntrackedファイルとして表示されますか? –

答えて

0

はい、投稿したとおりに機能します。

1

ファイル名と拡張子の後ろに*記号が1つもありませんでした。私はこのリンクが有用であることを発見したhere

これは改訂された.gitignoreファイルです。これはうまくいくようです。

​​
関連する問題