Reputation: 1048
I created a repository on GitHub. I set up a local git repository using Eclipse and Egit.
With Team > Remote > Push
. I managed to push the local repo to the one on GitHub.
Now I expected to be able to use the Team > Push to Upstream
(as well as fetch from upstream) as a one-click push (and pull/fetch), but this menu choice is not available (grayed out). I have to use Team > Remote > Push
to each time manually fill in the info (ctrl+space helps).
Following this, I created a remote configuration and pushed from the repositories view, and I can see the remote GitHub repository listed under Remotes
but still the Team > Push to Upstream
command is grayed out in the menu.
Could someone please give me a hint as to what I have may done wrong?
Upvotes: 29
Views: 22230
Reputation: 1651
I came here searching for solution to solve similar problem with bitbucket - although none of the two highest votes answer didn't work for me, it proved that I had option "Put branch...", when I tried to do this, it says "Non fast-forward", but when I successfully made "pull", I was able to push to upstream.
Maybe it will help someone :)
Upvotes: 1
Reputation: 1
In my case all git commit/push operations are inactive. I fixed the issue by placing the repository folder under git directory.
Upvotes: 0
Reputation: 2402
This post might be a little old, but I had the same issue with one of my repos the following information from this link worked for me: Adding a remote to an existing git repo
The part i want to highlight from that article is the following:
[branch "master"]
remote = origin
merge = refs/heads/master
When I made the change in the .git/config and refreshed eclipse the "push to upstream" link worked for me. Keep in mind, I am assuming that you have a remote configured in your Git perspective for your remote repository.
Upvotes: 0
Reputation: 4429
Here's what I did and this worked fine:
You should now be able to push by merely right-clicking on your project, then Team→Push to Upstream.
Because the remote was added under the project in question, each project can have its own upstream origin and they will not interfere (whereas the Window > Preferences solution is a global setting).
Based on your description of what you did, it appears you attempted this - but possibly did not use the name "origin" for the remote, which is absolutely necessary. I stumbled across this solution by pure chance.
Upvotes: 45
Reputation: 37700
I had this problem and thankfully found a way to re-enable the "Push to Upstream" option.
remote.origin.url
Perhaps there is a neater way of achieving the same thing. Once I reached this far I stopped looking because it works now.
Upvotes: 15
Reputation: 3030
You need to have the following type of configuration in that repository's .git/config
file:
[branch "master"]
remote = origin
The remote
setting can be any of your remotes or just a value of .
You can edit the repository's config by selecting the Properties menu item from the context menu for the repository in the Git Repositories view.
Upvotes: 4