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

Segfault during fsck and spreading brokenness

From
RRich <forums@artfulrobot.uk>
Date
Sep 25, 2020, 15:48 UTC
Message-ID
<2aa62ff7-0780-8e20-e87d-387152524971@artfulrobot.uk>

I was encouraged by a couple of people on stackoverflow to post to this list. Apols in advance if it's not the right place.

I encountered a Segfault during fsck on a damaged bare repo (probably due to a powercut. Possibly during an operation, although not sure):

git --version git version 2.11.0

git fsck --full -v Checking HEAD link Checking object directory Checking tree 11bbc847cf1b4422b3e37830a9eac2e7af6559de Checking tree 11be4abeb20314de6145dfc0e6180807a74c03dc --->8 snip 8<--------------------------------------------------------------- Checking tree 14a4423e86f06c7ad75bf391d138e0cf7790508f Checking tree 147aeaec72b2f29bf1813494c942fbce497be679 zsh: segmentation fault  git fsck --full -v

Host: Debian 10. Linux 4.9.0-13-amd64 #1 SMP Debian 4.9.228-1 
(2020-07-05) x86_64 GNU/Linux
FS: BTRFS

I learnt about the damage while trying to `git push`  from my dev working tree. I think I did a `git pull` when the `git push` failed. The result of this was that my *local* repo was also damaged: there was an empty file created that would stop git operations and on deleting that I got a page full of errors.

Original SO question: https://stackoverflow.com/questions/64044995/can-one-corrupt-git-repo-corrupt-another?noredirect=1

Unfortunately I don't think I'm at liberty to give access to the repo as it possibly contains sensitive info/personal data.

I have solved the problem for myself (took a morning to do it!) but reporting here in case it's useful to do so. I use git all the time and I'm grateful for it. I'm not a systems-level coder, so not sure what use I'll be, but happy to answer any Qs or try things on the broken copies.

Thanks,
Rich
Next: Jeff King
Message 1 of 3 in “Segfault during fsck and spreading brokenness”
  1. RichSep 25, 2020
  2. Jeff KingSep 25, 2020
  3. RichSep 28, 2020

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.