Re: [RFC PATCH v3 7/8] Support sparse checkout in unpack_trees() and read-tree
From: <hidden>
Date: 2016-06-15 22:47:13
On Tue, Aug 11, 2009 at 2:38 PM, Jakub Narebski[off-list ref] wrote:
skillzero@gmail.com writes:quoted
2009/8/11 Nguyễn Thái Ngọc Duy [off-list ref]:quoted
quoted
[1] .git/info/sparse has the same syntax as .git/info/exclude. Files that match the patterns will be set as CE_VALID.Does this mean it will only support excluding paths you don't want rather than letting you only include paths you do want?Errr... what I read is that paths set by .git/info/sparse would be excluded from checkout (marked as assume-unchanged / CE_VALID). But if it is the same mechanism as gitignore, then you can use ! prefix to set files (patterns) to include, e.g. !Documentation/ * (I think rules are processed top-down, first matching wins).
I wasn't sure because the .gitignore negation stuff mentions negating a previously ignored pattern. But for sparse patterns, there likely wouldn't be a previous pattern. Include patterns are a little different in that if there are no include patterns (but maybe some exclude patterns), I think the expectation is that everything will be included (minus excludes), but if you have some include patterns then only those paths will be included (minus any excludes). It's great if it already supports includes as well as excludes (although it's a little confusing to say !Documentation to mean "include it"), but I wasn't sure from the comment so I was just asking.