error: git checkout-index: unable to write file

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

error: git checkout-index: unable to write file

From: Jonathan Nieder <hidden>
Date: 2016-06-15 22:49:58

Hi gitsters,

Just tried cloning an enormous repo to /tmp (which uses tmpfs)
and got

 error: git checkout-index: unable to write file webkit/tools/test_shell/resources/textAreaResizeCorner.png
 error: git checkout-index: unable to write file webkit/tools/test_shell/run_all_tests.cc
 error: git checkout-index: unable to write file webkit/tools/test_shell/simple_appcache_system.cc
 error: git checkout-index: unable to write file webkit/tools/test_shell/simple_appcache_system.h

[etc].

Maybe we can do better?  It seems non-ideal in a few ways:

 1) it is not checkout-index but read-tree -m that prints the message
 2) errno is forgotten
 3) I would prefer if "git clone" errored out quickly for ENOSPC instead
    of continuing to fill in the cracks with what small files it can
    find.  Though I suppose the current behavior is better for errors
    like EPERM and ENAMETOOLONG, so I can't complain much.

Re: error: git checkout-index: unable to write file

From: Jeff King <hidden>
Date: 2016-06-15 22:49:58

On Thu, Nov 04, 2010 at 02:00:07PM -0500, Jonathan Nieder wrote:
Maybe we can do better?  It seems non-ideal in a few ways:

 1) it is not checkout-index but read-tree -m that prints the message
I would prefer that it print out "clone" if anything. But those "git
checkout-index" bits appear to be hard-coded in entry.c, probably from
some long-ago cut and paste. Yuck.

Probably it should just be:

   ("error: unable to write %s: %s", file, strerror(errno))
 2) errno is forgotten
Yup, that is poor.
 3) I would prefer if "git clone" errored out quickly for ENOSPC instead
    of continuing to fill in the cracks with what small files it can
    find.  Though I suppose the current behavior is better for errors
    like EPERM and ENAMETOOLONG, so I can't complain much.
I'm not sure that the "try to get whatever files you can out" is ever
particularly useful, since the result is a broken repository. But if we
do subscribe to the theory that such a thing may be useful, I think it
can also be useful with ENOSPC. Consider a repository with a bunch of
small files and one giant file. If the giant file fails, you might want
to still be able to read the other stuff.

Again, that is assuming such a partial checkout is even useful. You can
always still pick things manually out of the index or the object db if
you really want to see them.

-Peff
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help