Skip to contentSkip to conversation

attr: a note about the order of .gitattributes lookup

PATCH In review Nguyen Thai Ngoc Duy 2 participants 2 messages Jun 15, 2016 Documentation

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 attr: a note about the order of .gitattributes lookup

This is the documentation part of

1a9d7e9 (attr.c: read .gitattributes from index as well. - 2007-08-14) 06f33c1 (Read attributes from the index that is being checked out - 2009-03-13)

---
I looked around but did not see anywhere mentioning this. If I did not miss anything, then we should take a note about this to avoid surprises.

Resend, this time git@vger is CCed. Sorry for the noise.

 Documentation/gitattributes.txt | 6 ++++++
 1 file changed, 6 insertions(+)
Documentation/gitattributes.txt +6 -0
index 99ed04d..8c52a99 100644
@@ -66,6 +66,12 @@ is from the path in question, the lower its precedence). Finally
 global and system-wide files are considered (they have the lowest
 precedence).
 
+Normally if `.gitattributes` is not found in a directory in work tree,
+the same path in the index is examined. If there's a `.gitattributes`
+version in the index, that version will be used. During checkout process,
+the order of examination is reversed: index version is preferred over
+the work tree version.
+
 If you wish to affect only a single repository (i.e., to assign
 attributes to files that are particular to
 one user's workflow for that repository), then
Signature · 1 line
1.7.12.1.406.g6ab07c4
#1 lore raw
Quoted 21 lines · Nguyen Thai Ngoc Duy

This is the documentation part of

1a9d7e9 (attr.c: read .gitattributes from index as well. - 2007-08-14) 06f33c1 (Read attributes from the index that is being checked out - 2009-03-13)

---
I looked around but did not see anywhere mentioning this. If I did not miss anything, then we should take a note about this to avoid surprises.

Resend, this time git@vger is CCed. Sorry for the noise.

 Documentation/gitattributes.txt | 6 ++++++
 1 file changed, 6 insertions(+)
Documentation/gitattributes.txt +0 -0
index 99ed04d..8c52a99 100644

Documentation/gitattributes.txt is from the path in question, the lower its precedence). Finally · line 74

Quoted 9 lines
Documentation/gitattributes.txt +6 -0
@@ -66,6 +66,12 @@ is from the path in question, the lower its precedence). Finally
 global and system-wide files are considered (they have the lowest
 precedence).
 
+Normally if `.gitattributes` is not found in a directory in work tree,
+the same path in the index is examined. If there's a `.gitattributes`
+version in the index, that version will be used. During checkout process,
+the order of examination is reversed: index version is preferred over
+the work tree version.
+

Yeah, thanks for writing it up. The "direction" fix was done to help people when they check out a commit when a different commit with different .gitattributes is checked out to the working tree.

Quoted 3 lines
Documentation/gitattributes.txt +0 -0
 If you wish to affect only a single repository (i.e., to assign
 attributes to files that are particular to
 one user's workflow for that repository), then