I am attempting to follow some steps to contribute to a repository on GitHub and one of the steps is not working. The steps are here: https://github.com/wdbm/qTox/blob/master/CONTRIBUTING.md#how-to-open-a-pull-request.
I fork the repository on GitHub.
I clone the repository:
git clone https://github.com/<YOUR_USER>/qTox.git
I access the directory of the local repository:
cd qTox
I add the upstream remote in order to be able to fetch from the upstream repository:
git remote add upstream https://github.com/qTox/qTox.git
I attempt to point the local master branch to the upstream repository:
git branch master --set-upstream-to=upstream/master
This command fails with the following error message:
error: the requested upstream branch 'upstream/master' does not exist
hint:
hint: If you are planning on basing your work on an upstream
hint: branch that already exists at the remote, you may need to
hint: run "git fetch" to retrieve it.
hint:
hint: If you are planning to push out a new local branch that
hint: will track its remote counterpart, you may want to use
hint: "git push -u" to set the upstream config as you push.
How should I address this error? I am using Git 2.9.3.
Try this
git fetch upstream master:master
: this work only when you are not onmaster
. If you are onmaster
, a simplegit fetch upstream
is enough.Then you can link your local
master
to the remote tracking branchupstream/master
(which has just been fetched)Then you can use
git pull
to updatemaster
.Again, if you are not on
master
, then yes,git fetch upstream master:master
will work.Luh_ mentions also a typo issue in the refspec: see "git fetch doesn't fetch all branches".
I had a similar problem, however
git fetch
didn't solve my problem. Also, in my case I found thatgit config --get remote.origin.fetch
didn't return anything while it is suppose toMy problem was that there was a typo in the
.git/config
file in the fetch line of the respective remote block (probably something I added by mistake previously). So, check if your remote entry in the.git/config file
is correct, e.g.:You can also directly remove and re-add the remote entry