目录搜索
GuidesgitattributesgiteverydaygitglossarygitignoregitmodulesgitrevisionsgittutorialgitworkflowsAdministrationgit archivegit bundlegit cleangit filter-branchgit fsckgit gcgit instawebgit reflogBasic Snapshottinggit addgit commitgit diffgit mvgit resetgit rmgit statusBranching and Merginggit branchgit checkoutgit loggit mergegit mergetoolgit stashgit tagDebugginggit bisectgit blamegit grepEmailgit amgit format-patchgit request-pullgit send-emailExternal Systemsgit fast-importgit svnGetting and Creating Projectsgit clonegit initGitgit annotategit archimportgit bisect-lk2009git check-attrgit check-mailmapgit check-ref-formatgit checkout-indexgit cherrygit citoolgit columngit credentialgit credential-cachegit credential-storegit cvsexportcommitgit cvsimportgit cvsservergit diff-filesgit diff-treegit difftoolgit fast-exportgit fetch-packgit fmt-merge-msggit get-tar-commit-idgit guigit http-backendgit http-fetchgit http-pushgit imap-sendgit index-packgit interpret-trailersgit ls-remotegit ls-treegit mailinfogit mailsplitgit merge-filegit merge-indexgit merge-one-filegit merge-treegit mktaggit mktreegit name-revgit notesgit p4git pack-objectsgit pack-redundantgit pack-refsgit parse-remotegit patch-idgit prunegit prune-packedgit quiltimportgit receive-packgit remote-extgit remote-fdgit remote-testgitgit repackgit replacegit rereregit send-packgit sh-i18ngit sh-setupgit shellgit show-branchgit show-indexgit stripspacegit unpack-filegit unpack-objectsgit upload-archivegit upload-packgit vargit verify-commitgit verify-taggit whatchangedgit worktreeInspection and Comparisongit describegit shortloggit showMiscellaneousapi credentialsapi indexgitcligitcore tutorialgitcredentialsgitcvs migrationgitdiffcoregithooksgitkgitnamespacesgitremote helpersgitrepository layoutgitsubmodulesgittutorial 2gitwebgitweb.confpack formatUser ManualPatchinggit applygit cherry-pickgit rebasegit revertPlumbing Commandsgit cat-filegit check-ignoregit commit-treegit count-objectsgit diff-indexgit for-each-refgit hash-objectgit ls-filesgit merge-basegit read-treegit rev-listgit rev-parsegit show-refgit symbolic-refgit update-indexgit update-refgit verify-packgit write-treeServer Admingit daemongit update-server-infoSetup and Configgitgit configgit helpSharing and Updating Projectsgit fetchgit pullgit pushgit remotegit submodule
文字

命名

git-check-ignore  - 调试 gitignore /排除文件

概要

git check-ignore [options] pathname…
git check-ignore [options] --stdin

描述

对于通过命令行或文件via给出的每个路径名--stdin,检查该文件是否被.gitignore(或排除机制的其他输入文件)排除,并输出路径(如果排除)。

默认情况下,跟踪文件根本不显示,因为它们不受排除规则限制; 但看到 '--no-index' 。

选项

-q, --quiet

不输出任何内容,只需设置退出状态即可。这只对一个路径名有效。

-v, --verbose

还输出有关每个给定路径名的匹配模式(如果有)的详细信息。有关排除源内部和之间的优先规则,请参阅 gitignore [5]。

--stdin

从标准输入读取路径名,每行一个,而不是命令行。

-z

输出格式被修改为机器可分析的(见下文)。如果--stdin还给出,输入路径用NUL字符而不是换行字符分隔。

-n, --non-matching

显示与任何模式不匹配的给定路径。这仅在--verbose启用时才有意义,否则将无法区分匹配模式的路径和不匹配的路径。

--no-index

进行检查时不要查看索引。这可以用来调试为什么路径被例如跟踪,git add .并且不被用户期望的规则忽略,或者当开发包括否定的模式以匹配先前添加的路径时git add -f

输出

默认情况下,将输出与忽略模式匹配的任何给定路径名,每行一个。如果没有模式匹配给定的路径,则不会为该路径输出任何内容; 这意味着路径不会被忽略。

如果--verbose指定,输出是一系列格式的行:

<source> <COLON> <linenum> <COLON> <pattern> <HT> <pathname>

<pathname>是被查询文件的路径,<pattern>是匹配模式,<source>是模式的源文件,<linenum>是该源文件中模式的行号。如果模式包含!前缀或/后缀,它将保留在输出中。引用core.excludesFile或相对于存储库根.git/info/exclude目录指定的文件或每个目录排除文件时,<source>将是绝对路径。

如果-z指定,则输出中的路径名由空字符分隔; 如果--verbose也被指定,则也使用空字符而不是冒号和硬标签:

<source> <NULL> <linenum> <NULL> <pattern> <NULL> <pathname> <NULL>

如果-n或者--non-matching被指定,则也会输出不匹配的路径名,在这种情况下,每个输出记录中除<pathname>之外的所有字段都将为空。这在非交互式运行时非常有用,因此文件可以增量流式传输到长时间运行的检查忽略进程的STDIN,并且对于其中的每个文件,STDOUT都会指示该文件是否匹配模式。(如果没有这个选项,就不可能判断给定文件的输出缺失是否意味着它不匹配任何模式,或者输出还没有生成。)

缓冲发生GIT_FLUSH在git [1]中的选项下。调用者负责避免溢出输入缓冲区或从空输出缓冲区读取引起的死锁。

退出状态

0

一个或多个提供的路径被忽略。

1

没有提供的路径被忽略。

128

遇到致命错误。

上一篇:下一篇: