'git pull remote branch cannot find remote ref
I'm not sure why this doesn't work. When I do git branch -a, this is what I see:

I'm trying to pull from the DownloadManager on the online GitHub repository. I have tried
- git pull, but then it complains about not knowing which branch to pull from
- git pull origin, doesn't know which branch
- git pull origin downloadmanager
fatal: Couldn't find remote ref downloadmanager. Unexpected end of commands stream - git pull origin remotes/origin/DownloadManager
'fatal couldn't find remote ref remotes/origin/DownloadManager. Unexpected end of commands stream
Is there something I'm missing? In Xcode, When I try to connect to the repository, nothing ever shows up. I have been able to push to it in the past. But I can't push again until I pull the most recent changes.
Solution 1:[1]
This error happens because of local repository can't identify the remote branch at first time. So you need to do it first. It can be done using following commands:
git remote add origin 'url_of_your_github_project'
git push -u origin master
Solution 2:[2]
If none of these answers work, I would start by looking in your .git/config file for references to the branch that makes problems, and removing them.
Solution 3:[3]
I faced the same issue because GitHub changed the default branch name from master to main
so
git pull origin master did not work for me.
try thisgit pull origin main
If the issue is due to a branch name conflict, this will save you.
Solution 4:[4]
The branch name in Git is case sensitive. To see the names of your branches that Git 'sees' (including the correct casing), use:
git branch -vv
... and now that you can see the correct branch name to use, do this:
git pull origin BranchName
where 'BranchName' is the name of your branch. Ensure that you match the case correctly
So in the OP's (Original Poster's) case, the command would be:
git pull origin DownloadManager
Solution 5:[5]
If the remote branch was deleted (or renamed), then you might get such error when trying to fetch that old-branch:
$ git fetch --prune --all
Fetching origin
fatal: couldn't find remote ref refs/heads/old-branch
error: Could not fetch origin
Check your local git config if it still refers to the old-branch:
$ git config --get-all remote.origin.fetch
+refs/heads/*:refs/remotes/origin/*
+refs/heads/old-branch:refs/remotes/origin/old-branch
+refs/heads/master:refs/remotes/origin/master
Removing the old refs entries, can fix the fetch problem:
$ git config --unset-all remote.origin.fetch
$ git fetch --prune --all
Fetching origin
...
* branch HEAD -> FETCH_HEAD
Solution 6:[6]
For me, it was because I was trying to pull a branch which was already deleted from Github.
Solution 7:[7]
In my case, this error occurred due to the naming changes made by Github for the default branch from master to main
So instead of using,
git pull origin master
You may use,
git pull origin main
Solution 8:[8]
check your branch on your repo. maybe someone delete it.
Solution 9:[9]
You need to set your local branch to track the remote branch, which it won't do automatically if they have different capitalizations.
Try:
git branch --set-upstream downloadmanager origin/DownloadManager
git pull
UPDATE:
'--set-upstream' option is no longer supported.
git branch --set-upstream-to downloadmanager origin/DownloadManager
git pull
Solution 10:[10]
This is because your remote branch name is "DownloadManager“, I guess when you checkout your branch, you give this branch a new name "downloadmanager".
But this is just your local name, not remote ref name.
Solution 11:[11]
For me it was failing because my remote branch was missing (it was deleted on previous merge run.)
Solution 12:[12]
In my case I had got the capitalisation wrong on the branch ABC-100 when I did git checkout abc-100 which I then worked on. My solution was to merge code from abc-100 into ABC-100 and then delete abc-100.
Solution 13:[13]
In my case I had a branch in my local branches that was removed from the server
just remove it from the local branches and pull will works as expected
Solution 14:[14]
I had this issue when after rebooted and the last copy of VSCode reopened. The above fix did not work, but when I closed and reopened VSCode via explorer it worked. Here are the steps I did:
//received fatal error
git remote remove origin
git init
git remote add origin git@github:<yoursite>/<your project>.git
// still received an err
//restarted VSCode and folder via IE
//updated one char and resaved the index.html
git add .
git commit -m "blah"
git push origin master
Solution 15:[15]
The problem occured for me because (I think) someone tried to clone a repository from a folder on our server into the same folder. This created a ".git" folder in the repository I tried to clone and broke everything. Deleting the ".git" folder in the repo I wanted to clone fixed it.
Solution 16:[16]
In my own case, I just made the change from "master" to "main" and I was able to pull from the remote repo.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
