Thanks for reviewing and locating the commits. OK, I'll re-roll and add the relevant commits. It may take some time. Should I just send the revised patch as a separate thread (with the relevant commits and history)? On Sat, Mar 3, 2018 at 6:12 PM, Eric Sunshine <sunshine@xxxxxxxxxxxxxx> wrote: > On Sat, Mar 3, 2018 at 8:36 PM, Dorab Patel <dorabpatel@xxxxxxxxx> wrote: >> Correct me if I'm wrong, but my understanding, from >> https://git-scm.com/docs/gitignore, is that $HOME/.gitignore is used >> only if it is specified as the value of core.excludesfile in >> ~/.gitconfig. It is not used by default. If that is so, then the >> proposed (and original) code works. The changes I am proposing handle >> the default case, when core.excludesfile is not specified. > > You're right. I must have set core.excludesfile so long ago that I > forgot about it and assumed $HOME/.gitignore was consulted by default. > >> Looking deeper into how the function git-get-exclude-files is used, I >> see that it is only being called from git-run-ls-files-with-excludes. >> So, perhaps, a better (or additional) fix might be to add the >> parameter "--exclude-standard" in the call to git-run-ls-files from >> within git-run-ls-files-with-excludes. And remove the need for >> get-get-exclude-files altogether. Presumably, "--exclude-standard" >> handles the default case with/without XDG_CONFIG_HOME correctly. The >> question I'd have then is: why didn't the original author use that >> option? Either I'm missing something? Or the option was added later, >> after the original code was written? Or something else? > > Using --exclude-standard rather than --exclude-from and retiring > git-get-exclude-files() makes sense to me. > > As for why the original author didn't use --exclude-standard, project > history tells us that. In particular, git-get-exclude-files() was > implemented by 274e13e0e9 (git.el: Take into account the > core.excludesfile config option., 2007-07-31), whereas > --exclude-standard was introduced by 8e7b07c8a7 (git-ls-files: add > --exclude-standard, 2007-11-15), three and a half months later. > > If you do re-roll to use --exclude-standard, then it would be good for > your commit message to explain this history, citing the relevant > commits. > > Thanks.