ノート:
また興味深い(qwertymkの回答で述べた)、git check-ignore -v
少なくともUnixではコマンドを使用することもできます(CMD Windowsセッションでは機能しません)。
git check-ignore *
git check-ignore -v *
2つ目.gitignore
は、gitリポジトリでファイルを無視する実際のルールを表示します。
Unixでは、「現在のディレクトリ内のすべてのファイルに再帰的に展開するものは何ですか?」とbash4 +を使用します。
git check-ignore **/*
(またはfind -exec
コマンド)
注:https : //stackoverflow.com/users/351947/Rafi B.は、(危険な)globstarを回避するためにコメントで提案しています:
git check-ignore -v $(find . -type f -print)
.git/
ただし、サブフォルダーからファイルを必ず除外してください。
元の回答42009)
git ls-files -i
そのソースコードが示すことを除いて、動作するはずです:
if (show_ignored && !exc_given) {
fprintf(stderr, "%s: --ignored needs some exclude pattern\n",
argv[0]);
exc_given
?
-i
実際に何かを一覧表示するには、の後にもう1つのパラメーターが必要であることがわかります。
試してください:
git ls-files -i --exclude-from=[Path_To_Your_Global].gitignore
(ただし、フィルターされたキャッシュされた(無視されない)オブジェクトのみが一覧表示されるため、希望どおりではありません)
例:
$ cat .git/ignore
# ignore objects and archives, anywhere in the tree.
*.[oa]
$ cat Documentation/.gitignore
# ignore generated html files,
*.html
# except foo.html which is maintained by hand
!foo.html
$ git ls-files --ignored \
--exclude='Documentation/*.[0-9]' \
--exclude-from=.git/ignore \
--exclude-per-directory=.gitignore
実際、私の 'gitignore'ファイル( 'exclude'と呼ばれています)で、次のようなコマンドラインが見つかります。
F:\prog\git\test\.git\info>type exclude
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
そう....
git ls-files --others --ignored --exclude-from=.git/info/exclude
git ls-files -o -i --exclude-from=.git/info/exclude
git ls-files --others --ignored --exclude-standard
git ls-files -o -i --exclude-standard
トリックを行う必要があります。
で述べたように、LS-ファイルのmanページ、--others
非キャッシュ、非コミット、通常、無視されたファイルをお見せするために、重要な部分です。
--exclude_standard
は単なるショートカットではなく、標準の「無視されるパターン」設定をすべて含める方法です。
exclude-standard
標準のGit除外を追加します:.git/info/exclude
、.gitignore
各ディレクトリ、およびuser's global exclusion file
。