Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.43.1 → 2.47.1 no changes
- 2.43.0 11/20/23
- 2.40.1 → 2.42.3 no changes
- 2.40.0 03/12/23
- 2.25.1 → 2.39.5 no changes
- 2.25.0 01/13/20
- 2.18.1 → 2.24.4 no changes
- 2.18.0 06/21/18
- 2.7.6 → 2.17.6 no changes
- 2.6.7 05/05/17
- 2.1.4 → 2.5.6 no changes
- 2.0.5 12/17/14
概述
git check-attr [--source <树状对象>] [-a | --all | <属性>…] [--] <路径名>… git check-attr --stdin [-z] [--source <树状对象>] [-a | --all | <属性>…]
输出
输出的形式是: <路径> COLON SP <属性> COLON SP <信息> LF
除非 -z
生效,在这种情况下,使用 NUL 作为分隔符: <路径> NUL <属性> NUL <信息> NUL
<路径> 是被查询的文件的路径,<属性> 是被查询的属性,<信息> 可以是任何一种:
缓冲发生在 git[1] 中的 GIT_FLUSH
选项下的记录。 调用者负责避免因过度填充输入缓冲区或从空的输出缓冲区读取而造成的死锁。
实例
在例子中,使用了以下 .gitattributes 文件:
*.java diff=java -crlf myAttr NoMyAttr.java !myAttr README caveat=unspecified
-
列出一个单一属性:
$ git check-attr diff org/example/MyClass.java org/example/MyClass.java: diff: java
* 列出一个文件的多个属性:
$ git check-attr crlf diff myAttr — org/example/MyClass.java org/example/MyClass.java: crlf: unset org/example/MyClass.java: diff: java org/example/MyClass.java: myAttr: set
* 列出一个文件的所有属性:
$ git check-attr --all — org/example/MyClass.java org/example/MyClass.java: diff: java org/example/MyClass.java: myAttr: set
* 为多个文件列出一个属性:
$ git check-attr myAttr — org/example/MyClass.java org/example/NoMyAttr.java org/example/MyClass.java: myAttr: set org/example/NoMyAttr.java: myAttr: unspecified
* 并非所有的价值观都是同样明确的:
$ git check-attr caveat README README: caveat: unspecified
参见 -- gitattributes[5]. GIT --- 属于 git[1] 文档