git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: wishlist: git gui not listing untracked files in unstaged list

From
Jeff King <peff@peff.net>
Date
Mar 10, 2010, 22:32 UTC
Message-ID
<20100310223210.GC4223@sigill.intra.peff.net>
In-Reply-To
<20100310221403.GF21994@spearce.org>
On Wed, Mar 10, 2010 at 02:14:03PM -0800, Shawn O. Pearce wrote:
Show 13 quoted lines
> Jeff King <peff@peff.net> wrote:
> > 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.
> 
> I'd say its git-gui, yes?  Doesn't my shell automatically do
> --exclude-from=~/my.list for me?  Its not the command's job
> to do that expansion.

It depends on the shell. Bash will expand it in _some_ cases (but not this one). Dash never will:

  $ echo $BASH_VERSION
  4.1.0(1)-release
  $ echo foo=~/foo ;# expands
  foo=/home/peff/foo
  $ echo --foo=~/foo ;# does not
  --foo=~/foo
  $ dash -c 'echo foo=~/foo' ;# does not
  foo=~/foo

That being said, my gut feeling is for git-gui to fix it, too. Shell callers can use $HOME if they want.

-Peff
Previous: Junio C HamanoNext: Jeff King
Message 9 of 13 in “wishlist: git gui not listing untracked files in unstaged list”
  1. MALAISE PascalMar 10, 2010
  2. Junio C HamanoMar 10, 2010
  3. Shawn O. PearceMar 10, 2010
  4. MALAISE PascalMar 10, 2010
  5. Patrick HigginsMar 10, 2010
  6. Jeff KingMar 10, 2010
  7. Shawn O. PearceMar 10, 2010
  8. Junio C HamanoMar 10, 2010
  9. Jeff KingMar 10, 2010
  10. Jeff KingMar 10, 2010
  11. Johannes SixtMar 11, 2010
  12. Jeff KingMar 11, 2010
  13. Andreas SchwabMar 11, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.