I am relativly new to git and am facing this problem. The git push command shows the error below. I will explain to you from the begining what i had been trying to do . I created a submodule, commited and pushed it. The push throws the error below.
Salman@PC_HOME ~/git/breakit-web-app (master) $ git push origin master error: refs/heads/master does not point to a valid object! Counting objects: 4, done. Delta compression using up to 2 threads. Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 421 bytes, done. Total 3 (delta 1), reused 0 (delta 0) remote: bb/acl: salmanmanekia is allowed. accepted payload. error: Ref refs/heads/master is at 6a47a0fd398610a75bdab8976f842dc0efd89f86 but expected 00000000000000000000000000000000000000000 remote: error: failed to lock refs/heads/master To ssh://git@bitbucket.org/majuri/breakit-web-app.git ! [remote rejected] master -> master (failed to lock) error: failed to push some refs to 'ssh://git@bitbucket.org/majuri/breakit-web-app.git'
Here is a screen shot:

After that i tried some solutions but none of them worked. I will also explain breifly what i have been trying
1 : From the bitbucket repo i noticed there are some danggling commits (the red arrow in picture 2) so i gave the following commands to solve that git gc and git prune.
2: I also tried commands like git revert HEAD and git push origin HEAD --force but none seem to worked..

Other details:
$ git rev-parse --symbolic-full-name master refs/heads/master $ git rev-parse master 0da090c5cbde10ff19602a2722ae05231c30dff5 $ git show-ref master 0da090c5cbde10ff19602a2722ae05231c30dff5 refs/heads/master 6a47a0fd398610a75bdab8976f842dc0efd89f86 refs/remotes/origin/master
Thank you