11e3b2397c
If a direct mode file is deleted or modified, and there are no other files containing the content, the content was lost. That's a normal thing that can happen in direct mode, but not in v7, so the upgrade code has to notice it in order for the location log to be accurate.
19 lines
794 B
Markdown
19 lines
794 B
Markdown
Upgrading a direct mode repo to v7 while it has a deleted file in it
|
|
behaves strangely. This is after my recent change to not make it commit.
|
|
|
|
A `git checkout` of the file checks out the pointer file, as the content
|
|
of the file is not present. This is as expected.
|
|
|
|
But `git whereis` thinks the content is present, which it's not any longer.
|
|
Seems that the upgrade process needs to notice when a deleted file was the
|
|
only copy of the content, and set its content as not present.
|
|
|
|
> [[done]] --[[Joey]]
|
|
|
|
And `git fsck` doesn't find a problem, despite the content not being
|
|
present. And does not fix the location log.
|
|
This part may not be specific to this case, seems it must be some bug in
|
|
fsck?
|
|
|
|
> It was, a new bug introduced while removing the direct mode code. Fixed
|
|
> that part. --[[Joey]]
|