Merge branch 'mg/branch-set-upstream-previous'
[gitweb.git] / Documentation / git-check-attr.txt
index 8c2ac12f5d316a5db8c5a9be2c4d9639ca30653b..1f7312a1895ae66901e5472132406d01303da1f8 100644 (file)
@@ -9,27 +9,35 @@ git-check-attr - Display gitattributes information
 SYNOPSIS
 --------
 [verse]
-'git check-attr' attr... [--] pathname...
-'git check-attr' --stdin [-z] attr... < <list-of-paths>
+'git check-attr' [-a | --all | attr...] [--] pathname...
+'git check-attr' --stdin [-z] [-a | --all | attr...] < <list-of-paths>
 
 DESCRIPTION
 -----------
-For every pathname, this command will list if each attr is 'unspecified',
+For every pathname, this command will list if each attribute is 'unspecified',
 'set', or 'unset' as a gitattribute on that pathname.
 
 OPTIONS
 -------
+-a, --all::
+       List all attributes that are associated with the specified
+       paths.  If this option is used, then 'unspecified' attributes
+       will not be included in the output.
+
 --stdin::
        Read file names from stdin instead of from the command-line.
 
 -z::
-       Only meaningful with `--stdin`; paths are separated with
-       NUL character instead of LF.
+       Only meaningful with `--stdin`; paths are separated with a
+       NUL character instead of a linefeed character.
 
 \--::
-       Interpret all preceding arguments as attributes, and all following
-       arguments as path names. If not supplied, only the first argument will
-       be treated as an attribute.
+       Interpret all preceding arguments as attributes and all following
+       arguments as path names.
+
+If none of `--stdin`, `--all`, or `--` is used, the first argument
+will be treated as an attribute and the rest of the arguments as
+pathnames.
 
 OUTPUT
 ------
@@ -37,12 +45,12 @@ OUTPUT
 The output is of the form:
 <path> COLON SP <attribute> COLON SP <info> LF
 
-Where <path> is the path of a file being queried, <attribute> is an attribute
+<path> is the path of a file being queried, <attribute> is an attribute
 being queried and <info> can be either:
 
 'unspecified';; when the attribute is not defined for the path.
-'unset';;      when the attribute is defined to false.
-'set';;                when the attribute is defined to true.
+'unset';;      when the attribute is defined as false.
+'set';;                when the attribute is defined as true.
 <value>;;      when a value has been assigned to the attribute.
 
 EXAMPLES
@@ -69,7 +77,14 @@ org/example/MyClass.java: diff: java
 org/example/MyClass.java: myAttr: set
 ---------------
 
-* Listing attribute for multiple files:
+* Listing all attributes for a file:
+---------------
+$ git check-attr --all -- org/example/MyClass.java
+org/example/MyClass.java: diff: java
+org/example/MyClass.java: myAttr: set
+---------------
+
+* Listing an attribute for multiple files:
 ---------------
 $ git check-attr myAttr -- org/example/MyClass.java org/example/NoMyAttr.java
 org/example/MyClass.java: myAttr: set
@@ -86,15 +101,6 @@ SEE ALSO
 --------
 linkgit:gitattributes[5].
 
-
-Author
-------
-Written by Junio C Hamano <gitster@pobox.com>
-
-Documentation
---------------
-Documentation by James Bowes.
-
 GIT
 ---
 Part of the linkgit:git[1] suite