From: bdowning@lavos.net (Brian Downing)
To: "Shawn O. Pearce" <spearce@spearce.org>
Cc: Sebastian Schuberth <sschuberth@gmail.com>, git@vger.kernel.org
Subject: Re: git on Cygwin: Not a valid object name HEAD
Date: Tue, 7 Aug 2007 09:58:25 -0500 [thread overview]
Message-ID: <20070807145825.GO21692@lavos.net> (raw)
In-Reply-To: <20070807143616.GO9527@spearce.org>
On Tue, Aug 07, 2007 at 10:36:16AM -0400, Shawn O. Pearce wrote:
> Now on a normal UNIX system open(2) *always* by definition does
> binary IO. But Cygwin's text mount option tries to make UNIX
> programs DOS-friendly by making all files treated as text, even if
> it supposedly doing binary IO via open(2).
>
> I think its a mis-feature of Cygwin. Git has no way (that I know
> of) to defend itself from this, other than to tell the user to make
> sure they only store a Git repository in a location that is mounted
> with the binary flag.
Cygwin, like Windows' own open(2) simulation, defines an O_BINARY to pass
as a flag to open(2). I once got Git half-working on Cygwin text-mode
mounts by doing a horrible hack approximating:
#define open(name, flag, ...) \
open(name, (flag) | O_BINARY, ## __VA_ARGS__)
But it only half worked. Eventually it managed to corrupt itself again,
and worse, the test suite was completely hopeless, as all shell activity
still results in text-mode files.
-bcd
next prev parent reply other threads:[~2007-08-07 14:58 UTC|newest]
Thread overview: 60+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-07 9:02 git on Cygwin: Not a valid object name HEAD Sebastian Schuberth
2007-08-07 11:58 ` Johannes Schindelin
2007-08-07 12:13 ` Sebastian Schuberth
2007-08-07 13:18 ` Sebastian Schuberth
2007-08-07 14:36 ` Shawn O. Pearce
2007-08-07 14:58 ` Brian Downing [this message]
2007-08-07 15:27 ` Sebastian Schuberth
2007-08-07 17:11 ` Steffen Prohaska
2007-08-07 17:42 ` Mark Levedahl
2007-08-07 19:41 ` Steffen Prohaska
2007-08-07 21:44 ` Linus Torvalds
2007-08-07 22:28 ` Junio C Hamano
2007-08-08 3:47 ` Linus Torvalds
2007-08-07 22:46 ` Steffen Prohaska
2007-08-07 22:49 ` [PATCH] cygwin: added fopen "b" and open O_BINARY to support cygwin's textmode Steffen Prohaska
2007-08-07 22:49 ` [PATCH] tests: added d2u to have unix style testfiles even in textmode Steffen Prohaska
2007-08-08 3:03 ` Linus Torvalds
2007-08-08 5:00 ` Steffen Prohaska
2007-08-07 23:20 ` git on Cygwin: Not a valid object name HEAD Steffen Prohaska
2007-08-08 4:25 ` Brian Downing
2007-08-08 5:46 ` Steffen Prohaska
2007-08-07 22:26 ` Junio C Hamano
2007-08-08 7:55 ` Sebastian Schuberth
2007-08-08 13:50 ` Mark Levedahl
2007-08-08 15:51 ` Steffen Prohaska
2007-08-08 16:41 ` Mark Levedahl
2007-08-08 17:20 ` Johannes Schindelin
2007-08-08 19:37 ` Steffen Prohaska
2007-08-08 20:13 ` Steffen Prohaska
2007-08-08 20:36 ` Steffen Prohaska
2007-08-08 23:07 ` Mark Levedahl
2007-08-09 4:59 ` Steffen Prohaska
2007-08-09 6:01 ` Marius Storm-Olsen
2007-08-09 6:38 ` Steffen Prohaska
2007-08-09 6:47 ` Marius Storm-Olsen
2007-08-09 8:50 ` Johannes Schindelin
2007-08-09 9:00 ` Marius Storm-Olsen
2007-08-09 10:33 ` Steffen Prohaska
2007-08-08 21:30 ` Johannes Schindelin
2007-08-09 6:20 ` Steffen Prohaska
2007-08-10 6:07 ` Torgil Svensson
2007-08-10 7:19 ` Steffen Prohaska
2007-08-10 10:30 ` Johannes Schindelin
2007-08-10 11:14 ` Steffen Prohaska
2007-08-10 22:31 ` Torgil Svensson
2007-08-11 0:43 ` Steffen Prohaska
2007-08-13 10:50 ` Johannes Schindelin
2007-08-15 0:04 ` Torgil Svensson
2007-08-15 5:22 ` Steffen Prohaska
2007-08-15 5:30 ` David Kastrup
2007-08-15 5:43 ` Steffen Prohaska
2007-08-15 6:59 ` David Kastrup
[not found] ` <86k5rx474o.fsf@lola.quinscape.zz>
2007-08-15 7:38 ` Shawn O. Pearce
2007-08-15 12:42 ` Mark Levedahl
2007-08-15 12:48 ` Mark Levedahl
2007-08-15 13:06 ` Steffen Prohaska
2007-08-16 0:27 ` Mark Levedahl
2007-08-16 6:04 ` Steffen Prohaska
2007-08-16 11:55 ` Mark Levedahl
2007-08-07 15:29 ` Mark Levedahl
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070807145825.GO21692@lavos.net \
--to=bdowning@lavos.net \
--cc=git@vger.kernel.org \
--cc=spearce@spearce.org \
--cc=sschuberth@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.