Ticket Hash: | 47d4e76139fd63f2aeb6ff14dfe8512a0734d599 | |||
Title: | tree checksum does not match manifest after commit | |||
Status: | Closed | Type: | Code_Defect | |
Severity: | Priority: | |||
Subsystem: | Resolution: | Rejected | ||
Last Modified: | 2024-01-29 09:23:36 | |||
Version Found In: | [cf178577ec] | |||
Description: | ||||
I ended up with a working directory where fossil changes says:
Index: env-msvc.cmd =================================================================== --- env-msvc.cmd +++ env-msvc.cmd Index: include/file/file.hpp =================================================================== ........ For me it means something like there are no changes, but I don't know why it gets listed in the diff. And trying to commit all files but 'env-msvc.cmd' (specifying the files manually as 'fossil commit' arguments), gave me this error AFTER typing the commit message, no matter how many times I try to commit: New_Version: 4e03710731bdf5f33437b72ebf4166066e2e2984 fossil: tree checksum does not match manifest after commit: bec214c60868becba5c0e7b1e612d26e versus 6da255ae2109c7a801b897c43efba77c About how I reached that state... I had a tree of changes. Then I did: fossil merge --cherrypick XXX That brought a little change in env-msvc.cmd. I then did fossil revert. That said to have reverted all the changes I had. Then I did fossil undo. That brought the changes back. I did not want the change that got merged in the file for the cherrypick, so I did fossil revert env-msvc.cmd. And then it still appears in the diff without changes shown. As a clue, I'm on linux, and the env-msvc.cmd has CRLF line endings (it's mostly to be used on windows). drh added on 2010-12-10 15:28:55: The logic involved has been updated in later releases of Fossil to provide more detail and more clues about what is going wrong. There have also been some bug fixes. Can you please try this again with the most recent release of Fossil. anonymous claiming to be viric added on 2010-12-10 16:36:14: New_Version: b101a2c25089650d90f2099f381cd54926b83fd1 fossil: working checkout does not match manifest after commit: f45029dffcf73ec2c5fd7f9288d7faa4 versus 735a3cee0f1cf8aa32f197de190eda5a anonymous claiming to be viric added on 2010-12-10 17:02:42: I mentioned the env-msvc.cmd had CRLF End-Of-Lines, but I was wrong. I checked, and it has usual unix LF EOLs. So nothing special about CRLF. I tried changing the file to CRLF, and then fossil diff showed a diff as with all lines changed. Changing it back to LF ends of line brought the same broken state of showing the file EDITED but 'diff' showing no difference. Even changing to fossil settings diff-tool diff -u showed a void diff for that file, but the file appeared in the diff. Can it be that the merge(cherrypick) + revert leave the hashes for the original ckout files in some strange state? anonymous claiming to be viric added on 2010-12-10 17:04:20: I did "fossil merge --cherrypick XXX" (bringing the change to env-msvc.cmd) and then "fossil revert". And there it shows the broken state already, that cannot be recovered unless doing fossil checkout. anonymous claiming to be viric added on 2010-12-10 17:24:24: To bring in the checksum failure, looks like related to commiting OTHER files in the repository. | ||||
User Comments: | ||||
added on 2024-01-29 09:23:36:
Closing as part of periodic cleanup. |