0

多くのサブディレクトリがあり、深さが可変で、常に成長しているディレクトリがあります。特定のファイルを 1 つだけ保持したい。.gitignoreこれらのディレクトリとサブディレクトリから、そのディレクトリ以外のすべてのファイルを無視するように指示するにはどうすればよいですか?

まさに、私が持っているのは、毎日多くのレポートを保存するレポート ディレクトリです。新しいレポートごとに、ファイルとサブディレクトリを含む変数名を持つ新しいサブディレクトリが作成されます。ファイル「foo」のみを保持したい

  • レポートディレクトリ
    • MONTH_A
      • DAY_HOUR_OF_REPORT
        • ファイル_1
        • ファイル_2
        • ふー
        • ファイル_N
        • ANOTHER_DIRECTORY_I_COMPLETELY_IGNORE
      • DAY_HOUR_OF_REPORT
        • ファイル_1
        • ファイル_2
        • ふー
        • ファイル_N
        • ANOTHER_DIRECTORY_I_COMPLETELY_IGNORE
    • MONTH_B
      • DAY_HOUR_OF_REPORT

等々

私は多くのことを試しました。最後のもの

/REPORTDIRECTORY/**/*
!foo

/REPORTDIRECTORY/**/*
!/REPORTDIRECTORY/**/foo

成功しませんでした。

gitignore を入力すると、二重のワイルドカードに問題があると信じ始めています。

/REPORTDIRECTORY/**/ANOTHER_DIRECTORY_I_COMPLETELY_IGNORE/

また

REPORTDIRECTORY/**/ANOTHER_DIRECTORY_I_COMPLETELY_IGNORE

この「ANOTHER_DIRECTORY_I_COMPLETELY_IGNORE」は無視されません:(

Windows用のGitバージョンを使用し1.8.1.2-preview20130201ています。Windows で GUI (バージョン 4.5)を使用していますが、Git によって直接解析されるSmartGitため、GUI は重要ではないと思います。Git のマニュアル ページには、二重アスタリスクのワイルドカードが機能するはずであると記載されています。.gitignore

私は何か間違ったことをしていますか、それとも.gitignoreパーサーですか?

4

2 に答える 2

0

最新バージョンに更新する必要がある可能性はありますか? Web サイトによると、**/パターンは 1.8.2 以降でのみサポートされていました。

于 2013-08-29T22:11:39.307 に答える