Currently it is possible to inquire the values of particular attributes on particular files, using either the API function git_checkattr() or the command "git check-attr". But it is not possible to ask for *all* attributes that are associated with a particular file. This patch series adds that functionality: * A new API call git_allattr() * A new option "git check-attr --all -- pathnames" Along the way, several small cleanups are made in the general neighborhood, including: * Disallow the empty string as an attribute name * Provide access to the name attribute of git_attr * Fail with an error message if no pathnames are provided on the command line (and --stdin is not used) * If --stdin is used, interpret all command-line arguments as attribute names * Rename struct git_attr_check to git_attr_value Most of the patches are hopefully self-explanatory; see the individual patch emails for discussion of changes that might potentially be controversial. Michael Haggerty (19): doc: Add a link from gitattributes(5) to git-check-attr(1) doc: Correct git_attr() calls in example code Remove anachronism from comment Disallow the empty string as an attribute name git-check-attr: Add missing "&&" git-check-attr: Add tests of command-line parsing Provide access to the name attribute of git_attr git-check-attr: Use git_attr_name() Allow querying all attributes on a file git-check-attr: Extract a function output_attr() git-check-attr: Introduce a new variable git-check-attr: Extract a function error_with_usage() git-check-attr: Handle each error separately git-check-attr: Process command-line args more systematically git-check-attr: Error out if no pathnames are specified git-check-attr: Add an --all option to show all attributes git-check-attr: Drive two tests using the same raw data git-check-attr: Fix command-line handling to match docs Rename struct git_attr_check to git_attr_value Documentation/git-check-attr.txt | 23 ++++- Documentation/gitattributes.txt | 3 + Documentation/technical/api-gitattributes.txt | 66 +++++++++----- archive.c | 4 +- attr.c | 61 +++++++++++-- attr.h | 24 ++++- builtin/check-attr.c | 123 ++++++++++++++++-------- builtin/pack-objects.c | 4 +- convert.c | 10 +- ll-merge.c | 6 +- t/t0003-attributes.sh | 61 +++++++++---- userdiff.c | 2 +- ws.c | 4 +- 13 files changed, 278 insertions(+), 113 deletions(-) -- 1.7.6.8.gd2879 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html