Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Git Fatal Error: info/refs not found

Tags:

git

github

I receive the following error:

fatal: https://github.com/username/repository-name.git/info/refs not found: did you run git update-server-info on the server?

if I try to push my repository without creating it first on github.com. If I create my repository first on github, then I can push branches no problem. Is this procedure routine? Or am I doing something wrong? I thought a repository could be created locally and pushed without first creating it on github.

like image 318
B6431 Avatar asked Sep 13 '12 13:09

B6431


5 Answers

fatal: https://github.com/username/repository-name.git/info/refs not found: did you run git update-server-info on the server?

In GitHub context, this message should be understood as "The repository doesn't exist". You're supposed to push toward an already existing bare repository. A bare repository is a repository without a working directory, usually found server-side.

If I create my repository first on github, then I can push branches no problem. Is this procedure routine?

Yes. You're supposed to first create your repository on GitHub. See the help topic about this

indeed, as stated by the documentation "To put your project up on GitHub, you'll need to have a GitHub repository for it to live in."

like image 136
nulltoken Avatar answered Oct 07 '22 07:10

nulltoken


I confirm you need to create your repo on GitHub first, before being able to push to said (remote) repo.

Once created, you can add it as a remote named 'origin' to your local repo, and 'git push origin master' (for the first push).

like image 34
VonC Avatar answered Oct 07 '22 08:10

VonC


Also note that the repository name is case sensitive. Oops!

like image 39
kforbesie Avatar answered Oct 07 '22 07:10

kforbesie


Are you sure the git repo you're trying to access supports the HTTPS protocol?

Instead of this: git clone https://github.com/TeaCodie/TeaCodie-Website.git

Try this: git clone [email protected]/TeaCodie/TeaCodie-Website.git

You may need to configure your SSH key.

For some details, see: http://git-scm.com/book/ch4-1.html and https://help.github.com/articles/set-up-git and https://help.github.com/articles/generating-ssh-keys

like image 33
l3x Avatar answered Oct 07 '22 08:10

l3x


I had the same error info/refs not found when I was cloning a local repository and serving it via http.

It seems that cloning a repository doesn't create the info/refs file and therefore it cannot been served remotely (https, ssh etc.) as remotely there is no way to get the name of the master branch without listing the .git folder, so the info/refs provides the path and the commitid for current git repository HEAD .

mkdir clone-without-refs; cd clone-without-refs
git clone ../origin.git .
ls -l .git/info

so I created it by hand this way (in the source repository, assuming you run a /bin/sh type of shell)

gitid=$(git rev-parse  HEAD)
echo HEAD: $gitid
echo -e "$gitid\trefs/heads/master" > .git/info/refs
if [ ! -e .git/refs/heads/master ]; then
    echo $gitid > .git/refs/heads/master
fi

then I did my cloning again and it worked (change $origin with yours):

rm -rf ../cloned
# checking if refs file is there (httpds server side):
origin="http://localhost:8080/~$USER/$(pwd|sed -e "s,$HOME/,,")/.git"
curl $origin/info/refs
git clone $origin ../cloned
# verify
git -C ../cloned log -2
like image 29
Michel C. a.k.a Doctor I-T Avatar answered Oct 07 '22 08:10

Michel C. a.k.a Doctor I-T