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

Re: Git Bash Bug

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Jul 14, 2017, 21:52 UTC
Message-ID
<alpine.DEB.2.21.1.1707142345050.4193@virtualbox>
In-Reply-To
<1500066765.25789.111.camel@mad-scientist.net>
Hi Paul,
On Fri, 14 Jul 2017, Paul Smith wrote:
Show 17 quoted lines
> On Fri, 2017-07-14 at 22:33 +0200, Johannes Schindelin wrote:
> > > You absolutely have to have /bin and /usr/bin on your PATH,
> > 
> > As Kavita talks about Git Bash, it is probably Git for Windows, for
> > which /bin should not be in the PATH but /mingw64/bin or /mingw32/bin
> > (depending on the architecture).
> 
> I did check this with my Git for Windows installation before posting. 
> Mine is older (2.7.0) though so maybe things have changed:
> 
>   pds@build-win MINGW64 ~
>   $ type -a ls
>   ls is aliased to `ls -F --color=auto --show-control-chars'
>   ls is /usr/bin/ls
>   ls is /bin/ls
>   ls is /usr/bin/ls
>   ls is /usr/bin/ls
Oh wow ;-)

For the record, /bin/ is simply mapped to /usr/bin/. They are not different directories, really.

> Clearly I have a lot of duplicates on my PATH now that I notice :)
;-)
> I have /mingw64/bin on my PATH as well but looking there it has git,
> gettext, edit, a bunch of DLL's, etc. but it doesn't contain ls or
> other coreutils programs.

Right. The difference between executables in /mingw64/bin/ and in /usr/bin/ is that the latter executables all implicitly link to msys-2.0.dll, i.e. the POSIX emulation layer based on Cygwin. As you probably guessed: the coreutils are all compiled using that POSIX emulation layer.

Ciao, Johannes

Previous: Paul Smith
Message 9 of 9 in “Git Bash Bug”
  1. Kavita DesaiJul 14, 2017
  2. Johannes SchindelinJul 14, 2017
  3. Kavita DesaiJul 14, 2017
  4. Paul SmithJul 14, 2017
  5. Kavita DesaiJul 14, 2017
  6. Paul SmithJul 14, 2017
  7. Johannes SchindelinJul 14, 2017
  8. Paul SmithJul 14, 2017
  9. Johannes SchindelinJul 14, 2017

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.