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

Re: git cat-file blob does not convert crlf

From
Junio C Hamano <gitster@pobox.com>
Date
Nov 26, 2008, 19:42 UTC
Message-ID
<7v3ahegtpi.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<20081127013456.6117@qkholland.gmail.com>
"Quim K. Holland" <qkholland@gmail.com> writes:
> I think git is buggy.
Thanks for pointing it out X-<.
> I wanted to discard the changes I made to my file by checking out a copy from the last commit, so I said
> % git cat-file blob HEAD:my-file >my-file
> But this does not respect core.autocrlf and the file becomes one long line.

That is pretty much intentional. cat-file is a low-level command that is meant to inspect the raw object contents. The output from the command has to be reproducible regardless of what customization you have in your particular repository and omission of attributes support (including the crlf conversion) is quite deliberate.

You said that you wanted to discard the changes by checking out a copy out of the HEAD commit. This can literally be done by:

	$ git checkout HEAD my-file

If you want to check out a copy out of the index (i.e, "the last staged version"), you can say:

	$ git checkout my-file
In other words, if you want to checkout, you can say checkout ;-)
Previous: Quim K. HollandNext: Johannes Schindelin
Message 2 of 3 in “git cat-file blob does not convert crlf”
  1. Quim K. HollandNov 26, 2008
  2. Junio C HamanoNov 26, 2008
  3. Johannes SchindelinNov 27, 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.