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

Re: Ad: fast-import problem importing dos format files under cygwin

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Dec 3, 2008, 16:20 UTC
Message-ID
<alpine.DEB.1.00.0812031718350.28112@intel-tinevez-2-302>
In-Reply-To
<20081203160446.GY23984@spearce.org>
Hi,
On Wed, 3 Dec 2008, Shawn O. Pearce wrote:
Show 32 quoted lines
> Jan Hudec <bulb@ucw.cz> wrote:
> > Dne 3 Prosinec 2008, 13:18, Johannes Sixt napsal(a):
> > > Jan Hudec schrieb:
> > >> On 3 December 2008, 08:51, Jan Hudec wrote:
> > >>>
> > >>> I have been playing with fast-import in cygwin and I have problems 
> > >>> importing files with CR/LF line-endings. The size in data command 
> > >>> is calculated including the CRs and than the file is copied binary 
> > >>> to the fast-import input stream. However fast-import skips the CRs 
> > >>> when reading, overreads by that number of bytes and fails when it 
> > >>> tries to read the next command from the middle.
> > >
> > > Do you happen to have core.autocrlf set in some way and could it 
> > > make a difference for fast-import? I have it unset.
> > 
> > I have it set to false explicitly in global config. Tried with not 
> > having it set at all and gives the same problem. Since the previous 
> > version of MSys Git worked for me, I suspect it's somehow 
> > cygwin-related.
> 
> Huh.  So fast-import *never* does auto-CRLF conversion, even if the 
> property is set.  It just doesn't make those calls internally. It 
> blindly copies data from the input stream into the pack. No exceptions.
> 
> fast-import under-reading near CRs and getting misaligned on its input 
> indicates that the stdio library has given us a FILE* for stdin which is 
> converting CRLF pairs into LFs, even within an fread() call.
> 
> My guess here is fast-import's stdin is set in text mode, but it really 
> needs to be in binary mode.  fast-import.c never attempts to correct 
> that when it starts, so on DOS based systems we are probably totally 
> screwed from the beginning...
I think you need to set the environment variable
	CYGWIN=binmode

Hth, Dscho

Previous: Shawn O. PearceNext: Jan Hudec
Message 6 of 7 in “fast-import problem importing dos format files under cygwin”
  1. Jan HudecDec 3, 2008
  2. Ad: fast-import problem importing dos format files under cygwinJan Hudec, Dec 3, 2008
  3. Johannes SixtDec 3, 2008
  4. Jan HudecDec 3, 2008
  5. Shawn O. PearceDec 3, 2008
  6. Johannes SchindelinDec 3, 2008
  7. Jan HudecDec 3, 2008

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.