git loose object问题处理

问题现象:

eldon@ubuntu:~/github/ColusLifeDemo$ git show
error: object file .git/objects/48/fafe9a709ab087741eb9a9824f457b89a4b27d is empty
error: object file .git/objects/48/fafe9a709ab087741eb9a9824f457b89a4b27d is empty
fatal: loose object 48fafe9a709ab087741eb9a9824f457b89a4b27d (stored in .git/objects/48/fafe9a709ab087741eb9a9824f457b89a4b27d) is corrupt

前天本人虚拟机强制关机了,怀疑跟这个有关。

删除冲突的文件:

eldon@ubuntu:~/github/ColusLifeDemo$ rm .-rf .git/

初始化本地仓库:

eldon@ubuntu:~/github/ColusLifeDemo$ git init
Initialized empty Git repository in /home/eldon/github/ColusLifeDemo/.git/

添加远端仓库:

eldon@ubuntu:~/github/ColusLifeDemo$ git remote add origin https://EldonZhao:[email protected]/ColusLife/ColusLifeDemo.git

同步代码:

eldon@ubuntu:~/github/ColusLifeDemo$ git fetch
remote: Counting objects: 197, done.
remote: Compressing objects: 100% (11/11), done.
remote: Total 197 (delta 0), reused 0 (delta 0), pack-reused 186
Receiving objects: 100% (197/197), 50.69 KiB | 24.00 KiB/s, done.
Resolving deltas: 100% (80/80), done.
From https://github.com/ColusLife/ColusLifeDemo
 * [new branch]      master     -> origin/master

分支设置:

eldon@ubuntu:~/github/ColusLifeDemo$ git reset --hard origin/master
HEAD is now at 48fafe9 Change code to support admin to manage models
eldon@ubuntu:~/github/ColusLifeDemo$ git branch --set-upstream-to=origin/master master
Branch master set up to track remote branch master from origin.
eldon@ubuntu:~/github/ColusLifeDemo$ git branch -a
* master
  remotes/origin/master

参考资料:

  • http://stackoverflow.com/questions/21132646/git-loose-object-is-corrupt-what-data-have-i-lost
  • http://www.zgxue.com/166/1664499.html

你可能感兴趣的:(git loose object问题处理)