GIT_ATTR_FALSE checks if an attribute is set off. In core git parlance, this is the value for attributes that are "Unset" (not to be confused with values that a "Unspecified").
GIT_ATTR_HAS_VALUE checks if an attribute is set to a value (as opposed to TRUE, FALSE or UNSPECIFIED). This would be the case if for a file with something like:
GIT_ATTR_TRUE checks if an attribute is set on. In core git parlance, this the value for "Set" attributes.
GIT_ATTR_UNSPECIFIED checks if an attribute is unspecified. This may be due to the attribute not being mentioned at all or because the attribute was explicitly set unspecified via the ! operator.
Add a macro definition.
Flush the gitattributes cache.
Loop over all the git attributes for a path.
Look up the value of one git attribute for path.
Look up a list of git attributes for path.
Check attribute flags: Reading values from index and working directory.
Check attribute flags: Using the system attributes file.