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

Re: git on Cygwin: Not a valid object name HEAD

From
Steffen Prohaska <prohaska@zib.de>
Date
Aug 9, 2007, 06:20 UTC
Message-ID
<76795DDC-29A5-4C7E-B56E-A6316A183C75@zib.de>
In-Reply-To
<Pine.LNX.4.64.0708082228520.21857@racer.site>
On Aug 8, 2007, at 11:30 PM, Johannes Schindelin wrote:
Show 16 quoted lines
> Hi,
>
> On Wed, 8 Aug 2007, Steffen Prohaska wrote:
>
>> On Aug 8, 2007, at 7:20 PM, Johannes Schindelin wrote:
>>
>>> So go for it, everybody, or alternatively do not even bother to  
>>> whine.
>>
>> I don't care about these things. I typically start the Explorer by
>> typing explorer into the 'Run ...' box of the start meny. So don't
>> expect anything from me that makes git more beautiful.
>
> That's nice to hear.  Finally somebody honest.  I'll return the  
> favour: I
> have no time to work on the bugs you sent in a reply.

That's fine. I don't expect anything, except for being honest about the level of Windows support that is currently available. In retrospect, I relied on the claim that git works in Cygwin without problems (not made by you but on the mailing list in general). This claim turns out to be wrong for me, because it highly depends on the details of how you configure your Cygwin, which makes it impossible to run git in Cygwin that is configured according to the 'wrong' policy.

Any hint how I can start debugging? I saw mingw for the first time in my life, yesterday. I only worked with cygwin and various Visual Studio versions, before.

[ btw, my point was that I'm mostly interested in getting the basic stuff going first. That is git with the same functionality that I have on Linux and Mac. The next would be a good integration with useful tools on Windows, for example git-mergetool should launch Windows three-way merge tools. The thing I'm least interested is a beautiful installer, which clutters my Desktop with icons, which I never use and need to cleanup later anyway.

Bottom line: if you have points on your list that better fit the described priorities, there would be a good chance that I can look into one or two of them, for example

Is anything needed to get mingw changes merged to the official repo? Is anything needed to get changes from the official repo to mingw?

My goal would be to type 'make windist' in the official repo and get a very basic installer (maybe just a zip archive) that contains everything needed to run git on Windows. Unpacking this self-contained installer on a freshly installed Windows should get you going. There should be no need to install Cygwin or something else.

Is this realistic? What is needed to get there? What would be an estimated timeframe to achieve this goal?

Will all this run on Windows XP 64 bit and Windows Vista 64 bit?

After I'm convinced that the level of support for Windows is sufficient, I will recommend using it, which means that approximately 30 developers will start using git in the way I describe to them. This will generate a lot of real-world testing. But it should not generate too many critical issues. People will blame me for recommending them the tool. ]

Back to debugging...
I tried the following (is this the right way to go?)
- double click on c:\msysgit\msys.bat to start a shell.
- cd git
- make
compiles with some warnings ..., and crashed with a popup...
The popup says (translated to english):
"NTVDM-CPU detected an invalid instruction.
CS:0000 IP:0077 OP: f0 37 05 0c 02 click to close the application."
the last lines I see in the shell are

LINK test-match-trees.exe SUBDIR git-gui INDEX lib/

I clicked and the compilation stops. My shell remains alive. So, I started to run tests.

t0000-basic fails on creation of symlinks. Apparently mingw doesn't support symlinks to files that do not exist. I reports 'ln: creating symbolic link 'path0sym' to 'hello path0' fails'.

I tried with 'export no_symlinks=1' (is this the right thing to do? Who should set no_symlinks=1? Should it be set by the makefile or in some global architecture configuration?).

Now t0000-basic runs except for some noise created by failing ln, which is not detected as a failure by the test script.

so I ran all tests and they look good. Only t7004 reported 'gpg: error loading iconv.dll'.

I tried 'make install' which yields another crash popup. Then I tried 'make -k install'

Wow... this crashed my virtual machine. Maybe Parallels should add msysgit to their test cases. If I read their automatically generated bugreport correctly it's again related to an invalid instruction. Maybe mingw uses some op codes it shouldn't?

Hmm... I planned to upgrade to the newest release of Parallels anyway. Hopefully it's more stable in this regards.

I set NO_TCLTK=1 in the Makefile to skip git-gui during installation. The installation finished without reporting any problem. Maybe I have a working git now ...

	Steffen
Previous: Johannes SchindelinNext: Torgil Svensson
Message 40 of 60 in “git on Cygwin: Not a valid object name HEAD”
  1. Sebastian SchuberthAug 7, 2007
  2. Johannes SchindelinAug 7, 2007
  3. Sebastian SchuberthAug 7, 2007
  4. Sebastian SchuberthAug 7, 2007
  5. Shawn O. PearceAug 7, 2007
  6. Brian DowningAug 7, 2007
  7. Sebastian SchuberthAug 7, 2007
  8. Steffen ProhaskaAug 7, 2007
  9. Mark LevedahlAug 7, 2007
  10. Steffen ProhaskaAug 7, 2007
  11. Linus TorvaldsAug 7, 2007
  12. Junio C HamanoAug 7, 2007
  13. Linus TorvaldsAug 8, 2007
  14. Steffen ProhaskaAug 7, 2007
  15. cygwin: added fopen "b" and open O_BINARY to support cygwin's textmodeSteffen Prohaska, Aug 7, 2007
  16. tests: added d2u to have unix style testfiles even in textmodeSteffen Prohaska, Aug 7, 2007
  17. Linus TorvaldsAug 8, 2007
  18. Steffen ProhaskaAug 8, 2007
  19. Steffen ProhaskaAug 7, 2007
  20. Brian DowningAug 8, 2007
  21. Steffen ProhaskaAug 8, 2007
  22. Junio C HamanoAug 7, 2007
  23. Sebastian SchuberthAug 8, 2007
  24. Mark LevedahlAug 8, 2007
  25. Steffen ProhaskaAug 8, 2007
  26. Mark LevedahlAug 8, 2007
  27. Johannes SchindelinAug 8, 2007
  28. Steffen ProhaskaAug 8, 2007
  29. Steffen ProhaskaAug 8, 2007
  30. Steffen ProhaskaAug 8, 2007
  31. Mark LevedahlAug 8, 2007
  32. Steffen ProhaskaAug 9, 2007
  33. Marius Storm-OlsenAug 9, 2007
  34. Steffen ProhaskaAug 9, 2007
  35. Marius Storm-OlsenAug 9, 2007
  36. Johannes SchindelinAug 9, 2007
  37. Marius Storm-OlsenAug 9, 2007
  38. Steffen ProhaskaAug 9, 2007
  39. Johannes SchindelinAug 8, 2007
  40. Steffen ProhaskaAug 9, 2007
  41. Torgil SvenssonAug 10, 2007
  42. Steffen ProhaskaAug 10, 2007
  43. Johannes SchindelinAug 10, 2007
  44. Steffen ProhaskaAug 10, 2007
  45. Torgil SvenssonAug 10, 2007
  46. Steffen ProhaskaAug 11, 2007
  47. Johannes SchindelinAug 13, 2007
  48. Torgil SvenssonAug 15, 2007
  49. Steffen ProhaskaAug 15, 2007
  50. David KastrupAug 15, 2007
  51. Steffen ProhaskaAug 15, 2007
  52. David KastrupAug 15, 2007
  53. Mark LevedahlAug 7, 2007
  54. Shawn O. PearceAug 15, 2007
  55. Mark LevedahlAug 15, 2007
  56. Mark LevedahlAug 15, 2007
  57. Steffen ProhaskaAug 15, 2007
  58. Mark LevedahlAug 16, 2007
  59. Steffen ProhaskaAug 16, 2007
  60. Mark LevedahlAug 16, 2007

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.