git commit stopped working - Error building trees
Solution 1:
This error means that you have a file with hash 13da9eeff5a9150cf2135aaed4d2e337f97b8114
, and this hash is not present in .git/objects/../
, or it's empty. When this error occurred, I only had this hash in the error, without the file path. Then I tried to do git gc --auto
and git reset --hard
. After one of these commands (these commands did not fix my problem), I got the path of the file that triggers the error.
You just need to generate the object hash:
git hash-object -w spec/routing/splits_routing_spec.rb
For more information see documentation. In the documentation, there is an additional way of repairing this error.
P.S. This was the only way that was helpful for me.
Solution 2:
You might have a corrupted object in your git repository.
If you have a remote, or other clones of this repository, you could grab from there the problematic file and just replace it on your local repo.
The file you want would be in:
/repo/.git/objects/13/da9eeff5a9150cf2135aaed4d2e337f97b8114
Solution 3:
git reset --hard
should bring your repository back to normal, but you will lose uncommitted changes.