On 27/10/16 23:50, Jeff King wrote: > I'd shy away from an actual include directive, as it raises a lot of > complications: I'm leaning that way now too. > - we parse possibly-hostile .gitignore files from cloned repositories. > What happens when I include ask to include /etc/passwd? Probably > nothing, but there are setups where it might matter (e.g., something > like Travis that auto-builds untrusted repositories, and you could > potentially leak the contents of files via error messages). It's > nice to avoid the issue entirely. I understand the issue. It's not obvious to me how using a .d solves this problem though. > - finding a backwards-compatible syntax using .d directories solves this nicely in my opinion > Whereas letting any of the user- or repo-level exclude files be a > directory, and simply reading all of the files inside, seems simple and > obvious. Apart from backwards compatibility, unless there's something I'm missing. > If you go that route, it probably makes sense to teach > gitattributes the same trick. Understood. I'll keep that in mind. >> In the case of a directory the plan would be to add links to files >> stored/sourced elsewhere. This does pose a precedence question which I >> haven't thought about yet, but probably makes it too hard for the >> limited value it brings. > > I think the normal behavior in such "foo.d" directory is to just sort > the contents lexically and read them in order, as if they were all > concatenated together, and with no recursion. I.e., behave "as if" the > user had run "cat $dir/*". > > That lets you handle precedence via the filenames (or symlink names). That was my thinking at first, but I didn't want to bias the discussion. > It > can't handle all cases (some items in "00foo" want precedence over "01bar" > and vice versa), but I don't think there's an easy solution. That's a > good sign that one or more of the files should be broken up. I've been burned by this myself by packages interfering with each other in /etc/sysctl.d Could we put this down to caveat emptor? I think this sorting should be intuitive to most people these days, and simple to document and comprehend.