From: Jeff King Date: Wed, 10 Mar 2010 22:12:28 GMT Subject: Re: wishlist: git gui not listing untracked files in unstaged list Message-ID: <20100310221228.GA4223@sigill.intra.peff.net> In-Reply-To: On Wed, Mar 10, 2010 at 10:00:41PM +0000, Patrick Higgins wrote: > Shawn O. Pearce spearce.org> writes: > > > Junio C Hamano pobox.com> wrote: > > I have no idea why the original poster isn't getting his ignore > > list(s) to work. I also have no idea why dropping the --others > > flag from the ls-files command gets him a useful result. > > I'm seeing a similar problem. For me, it's caused by defining > core.excludesfile to "~/.gitexcludes". The git config documentation > says that this will be expanded to my home directory. It appears that > git gui doesn't do this and instead runs "git ls-files --others -z > --exclude-from='~/.gitexcludes'" > > That chokes with: > > fatal: cannot use ~/.gitexcludes as an exclude file > > Changing core.excludesfile to use a fully-qualified path instead of ~/ > fixes the problem for me. This is an inconsistency in the way that tilde-expansion is handled. The core.excludesfile config variable is expanded internally with the "pathname" magic (git_config_pathname). But handing the filename directly to ls-files --exclude-from does not do that expansion. So either there is a bug in ls-files, which should expand from the command line, or one in git-gui, which should be using "git config --path core.excludesfile" to get the path. -Peff