It was the first time that I was using git, I wanted to import an existing project into github and everything was deleted. After search for an answer I think git deleted the files after git pull, I'm trying to recover the files and folders but I can't find how to do it.
I did exactly the next:
jesus@jesus-K52F:~/Escritorio/Django/Ujixy$ git init
Initialized empty Git repository in /home/jesus/Escritorio/Django/Ujixy/.git/
jesus@jesus-K52F:~/Escritorio/Django/Ujixy$ git add .
jesus@jesus-K52F:~/Escritorio/Django/Ujixy$ git status
# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: Catalogoapp/__init__.py
# new file: Catalogoapp/models.py
# new file: Catalogoapp/tests.py
# new file: Catalogoapp/views.py
# new file: Messageapp/__init__.py
# new file: Messageapp/models.py
# new file: Messageapp/tests.py
# new file: Messageapp/views.py
# new file: Ujixyapp/__init__.py
[...]
jesus@jesus-K52F:~/Escritorio/Django/Ujixy$ git push origin master
fatal: 'origin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
jesus@jesus-K52F:~/Escritorio/Django/Ujixy$ git add *
jesus@jesus-K52F:~/Escritorio/Django/Ujixy$ git status
# On branch master
#
# Initial commit
#
# Changes to be committed:
# (use "git rm --cached <file>..." to unstage)
#
# new file: Catalogoapp/__init__.py
# new file: Catalogoapp/models.py
# new file: Catalogoapp/tests.py
# new file: Catalogoapp/views.py
# new file: Messageapp/__init__.py
# new file: Messageapp/models.py
# new file: Messageapp/tests.py
# new file: Messageapp/views.py
# new file: Ujixyapp/__init__.py
[...]
jesus@jesus-K52F:~/Escritorio/Django/Ujixy$ git remote add origin https://github.com/PEREYO/Ujixy.git
jesus@jesus-K52F:~/Escritorio/Django/Ujixy$ git pull origin master
remote: Counting objects: 3, done.
remote: Total 3 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (3/3), done.
From https://github.com/PEREYO/Ujixy
* branch master -> FETCH_HEAD
jesus@jesus-K52F:~/Escritorio/Django/Ujixy$ git push origin master
Username for 'https://github.com': PEREYO
Password for 'https://[email protected]':
Everything up-to-date
jesus@jesus-K52F:~/Escritorio/Django/Ujixy$ git init
Reinitialized existing Git repository in /home/jesus/Escritorio/Django/Ujixy/.git/
jesus@jesus-K52F:~/Escritorio/Django/Ujixy$ git add *
jesus@jesus-K52F:~/Escritorio/Django/Ujixy$ git status
# On branch master
nothing to commit (working directory clean)
Now I'm trying to fix it doing the next:
jesus@jesus-K52F:~/Escritorio/Ujixy$ git fsck --lost-found
Checking object directories: 100% (256/256), done.
dangling tree bfe11a30d57a0233d3b0c840a3b66f6421987304
jesus@jesus-K52F:~/Escritorio/Ujixy$ git status
# On branch master
nothing to commit (working directory clean)
jesus@jesus-K52F:~/Escritorio/Ujixy$ git reflog
61daa69 HEAD@{0}: initial pull
jesus@jesus-K52F:~/Escritorio/Ujixy$ git cat-file -p bfe11a30d57a0233d3b0c840a3b66f6421987304
040000 tree 9196501a346cfe4347f46d82936745b78b0235b9 Catalogoapp
040000 tree 49561b4bd6adb8fe8bb1915d6bef09cd49195a97 Messageapp
040000 tree 0fb58bf9b56397443fb235e2a38045d6df7cd473 Ujixyapp
100644 blob e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 __init__.py
100644 blob dfe3388ddf2d5ba34559eb3ec56199d83cdce8bd __init__.pyc
100644 blob bcdd55e27be9447bf6b224b8ba0cbc6802509862 manage.py
100644 blob 34c5978d8026844038d530b491828398bc3ea6c7 settings.py
100644 blob 167a6b1965426ec30c25535fe27338b61b2ae0cf settings.pyc
100644 blob 4a7215cb90ae95d64ca30fde1c1277e0155eb4ed urls.py
100644 blob 6eedcddafbc8854f70f44181edac8e63781cfb09 urls.pyc
But, How can I recover the directories with all the files and folder? Now I'm working in a copy of .git folder to avoid another problems.
As you already have a reference to a dangling tree object, you're well on your way. The following should work: first recover the dangling tree into Git's index:
git read-tree bfe11a30d57a0233d3b0c840a3b66f6421987304
Next, update your working directory from the now-recovered index:
git checkout-index -a