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

Re: [msysGit] Re: [PATCH] Add a Windows-specific fallback to getenv("HOME");

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Jun 4, 2014, 15:56 UTC
Message-ID
<alpine.DEB.1.00.1406041749590.14982@s15462909.onlinehome-server.info>
In-Reply-To
<20140604154503.GB22681@camelia.ucw.cz>
Hi Stepan,
On Wed, 4 Jun 2014, Stepan Kasal wrote:
Show 7 quoted lines
> > > On Wed, Jun 4, 2014 at 5:14 PM, Johannes Schindelin
> > > <Johannes.Schindelin@gmx.de> wrote:
> > > > No. Git is not always called through Bash or the git-wrapper,
> > > > unfortunately.
> 
> but you have to admit, that in most cases it is called through bash or
> the git wrapper.

It would seem so. But the plan was always to make the user experience on Windows less abysmal than now (I just do not have enough time these days to pursue that goal myself), which includes the goal to make git.exe the main entrance point, not Bash nor the git-wrapper.

Show 6 quoted lines
> > The problem arises whenever git.exe calls subprocesses. You can pollute
> > the environment by setting HOME, I do not recall the details, but I
> > remember that we had to be very careful *not* to do that, hence the patch.
> > Sorry, has been a long time.
> 
> Yeah, memories.
*Very* vague. Sorry.
> Is this experience still valid?  How many users do profit from this,
> using c:/Program\ Files \(86\)/bin/git.exe instead of c:/Program\ Files
> \(86\)/cmd/git.exe, either by pure luck or intentionally?

Keep in mind that the most problems were introduced by the fact that USERPROFILE disagrees with HOMEDRIVE\HOMEPATH at times.

> It seems that we should keep the patch, to minimize surprise if
> bin/git.exe is used directly.

I am also in favor of keeping the patch because it introduces a bit of documentation. It says pretty precisely what it wants and allows platform-specific handling without having to play games with the environment, as was suggested earlier.

And of course you cannot deny that it had four years of testing. The HOME problems never came back after we included this patch.

> But we should probably make it consistent with other places:
> - $HOMEDRIVE$HOMEPATH (without the slash)
> - $USERPROFILE if the above dir does not exist.
> - setenv HOME instead of wrapper

Possibly. But again, it is hard to argue with four years of testing. Any change you make now will lack that kind of vetting.

> We can make this change for msysGit 2.0.0 only, so that we do not
> break 1.9.4 ;-)
So we can break 2.0.0! ;-)

Actually, 2.0.0 for Windows needs to wait a little longer (it is a little bit unfortunate that we could not coordinate it with upstream) because the plan is to switch to mingwGitDevEnv for said release. No more msysGit. Like, bu-bye. Thanks for all the fish.

Ciao, Dscho

Previous: Stepan KasalNext: Stepan Kasal
Message 9 of 31 in “Add a Windows-specific fallback to getenv("HOME");”
  1. Add a Windows-specific fallback to getenv("HOME");Stepan Kasal, Jun 4, 2014
  2. Duy NguyenJun 4, 2014
  3. Erik Faye-LundJun 4, 2014
  4. Karsten BleesJun 4, 2014
  5. Johannes SchindelinJun 4, 2014
  6. Erik Faye-LundJun 4, 2014
  7. Johannes SchindelinJun 4, 2014
  8. Stepan KasalJun 4, 2014
  9. Johannes SchindelinJun 4, 2014
  10. Stepan KasalJun 4, 2014
  11. Johannes SchindelinJun 4, 2014
  12. Git for Windows SDKPhilip Oakley, Jun 6, 2014
  13. Duy NguyenJun 4, 2014
  14. Sebastian SchuberthJun 6, 2014
  15. Johannes SchindelinJun 4, 2014
  16. Karsten BleesJun 5, 2014
  17. Add a Windows-specific fallback to getenv("HOME");Stepan Kasal, Jun 5, 2014
  18. Torsten BögershausenJun 5, 2014
  19. Add a Windows-specific fallback to getenv("HOME");Stepan Kasal, Jun 5, 2014
  20. Karsten BleesJun 5, 2014
  21. Erik Faye-LundJun 5, 2014
  22. Karsten BleesJun 5, 2014
  23. Stepan KasalJun 6, 2014
  24. Stepan KasalJun 5, 2014
  25. Johannes SchindelinJun 5, 2014
  26. Karsten BleesJun 5, 2014
  27. Johannes SchindelinJun 5, 2014
  28. Stepan KasalJun 5, 2014
  29. Karsten BleesJun 5, 2014
  30. Stepan KasalJun 4, 2014
  31. Johannes SchindelinJun 4, 2014

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.