Merge branch 'rr/maint-fetch-tag-doc-asterisks'
[git/mingw.git] / Documentation / git-check-attr.txt
bloba7be80d48bf6fd6928186116f00f3b48cf564041
1 git-check-attr(1)
2 =================
4 NAME
5 ----
6 git-check-attr - Display gitattributes information
9 SYNOPSIS
10 --------
11 [verse]
12 'git check-attr' [-a | --all | attr...] [--] pathname...
13 'git check-attr' --stdin [-z] [-a | --all | attr...] < <list-of-paths>
15 DESCRIPTION
16 -----------
17 For every pathname, this command will list if each attribute is 'unspecified',
18 'set', or 'unset' as a gitattribute on that pathname.
20 OPTIONS
21 -------
22 -a, --all::
23         List all attributes that are associated with the specified
24         paths.  If this option is used, then 'unspecified' attributes
25         will not be included in the output.
27 --cached::
28         Consider `.gitattributes` in the index only, ignoring the working tree.
30 --stdin::
31         Read file names from stdin instead of from the command-line.
33 -z::
34         Only meaningful with `--stdin`; paths are separated with a
35         NUL character instead of a linefeed character.
37 \--::
38         Interpret all preceding arguments as attributes and all following
39         arguments as path names.
41 If none of `--stdin`, `--all`, or `--` is used, the first argument
42 will be treated as an attribute and the rest of the arguments as
43 pathnames.
45 OUTPUT
46 ------
48 The output is of the form:
49 <path> COLON SP <attribute> COLON SP <info> LF
51 <path> is the path of a file being queried, <attribute> is an attribute
52 being queried and <info> can be either:
54 'unspecified';; when the attribute is not defined for the path.
55 'unset';;       when the attribute is defined as false.
56 'set';;         when the attribute is defined as true.
57 <value>;;       when a value has been assigned to the attribute.
59 Buffering happens as documented under the `GIT_FLUSH` option in
60 linkgit:git[1].  The caller is responsible for avoiding deadlocks
61 caused by overfilling an input buffer or reading from an empty output
62 buffer.
64 EXAMPLES
65 --------
67 In the examples, the following '.gitattributes' file is used:
68 ---------------
69 *.java diff=java -crlf myAttr
70 NoMyAttr.java !myAttr
71 README caveat=unspecified
72 ---------------
74 * Listing a single attribute:
75 ---------------
76 $ git check-attr diff org/example/MyClass.java
77 org/example/MyClass.java: diff: java
78 ---------------
80 * Listing multiple attributes for a file:
81 ---------------
82 $ git check-attr crlf diff myAttr -- org/example/MyClass.java
83 org/example/MyClass.java: crlf: unset
84 org/example/MyClass.java: diff: java
85 org/example/MyClass.java: myAttr: set
86 ---------------
88 * Listing all attributes for a file:
89 ---------------
90 $ git check-attr --all -- org/example/MyClass.java
91 org/example/MyClass.java: diff: java
92 org/example/MyClass.java: myAttr: set
93 ---------------
95 * Listing an attribute for multiple files:
96 ---------------
97 $ git check-attr myAttr -- org/example/MyClass.java org/example/NoMyAttr.java
98 org/example/MyClass.java: myAttr: set
99 org/example/NoMyAttr.java: myAttr: unspecified
100 ---------------
102 * Not all values are equally unambiguous:
103 ---------------
104 $ git check-attr caveat README
105 README: caveat: unspecified
106 ---------------
108 SEE ALSO
109 --------
110 linkgit:gitattributes[5].
114 Part of the linkgit:git[1] suite