This question is related to my problem in understanding rebase, branch and merge, and to the problem
How can you commit to your github account as you have a teamMate in your remote list?
I found out that other people have had the same problem. The problem seems to be related to /etc/xinet.d/.
Problem: unable to push my local branch to my master branch at Github
I run
git push origin master
I get
fatal: 'origin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
The error message suggests me that the branch 'origin' is not in my local git repository. This way, Git stops connecting to Github.
This is strange, since I have not removed the branch 'origin'.
My git tree is
dev
* master
ticgit
remotes/Math/Math
remotes/Math/master
remotes/origin/master
remotes/Masi/master
How can you push your local branch to Github, while you have a teamMate's branch in your local Git?
VonC's answer solves the main problem. I put a passphares to my ssh keys.
I run
$git push github master
I get
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
It seems that I need to give the passphrase for Git somehow.
How can you make Github ask for your passphrase rather than relying on the ssh key?
VonC's answer is best, but the part that worked for me was super simple and is kind of buried among a lot of other possible answers. If you are like me, you ran into this issue while running a "getting started with rails" tutorial and you had NOT setup your public/private SSH keys.
If so, try this:
$>cd ~/.ssh
$>ls
If the output of ls is
known_hosts
and nothing else, visit: http://help.github.com/mac-key-setup/ and start following the instructions from the "Generating a key" section and down.After running those instructions, my "git push origin master" command worked.
One possibility that the above answers don't address is that you may not have an ssh access from your shell. That is, you may be in a network (some college networks do this) where ssh service is blocked.In that case you will not only be able to get github services but also any other ssh services. You can test if this is the problem by trying to use any other ssh service.This was the case with me.
What does
returns (executed within your git repository) ?
Origin is just a default naming convention for referring to a remote Git repository.
If it does not refer to GitHub (but rather a path to your teammate repository, path which may no longer be valid or available), just add another origin, like in this Bloggitation entry
(I would actually use the name 'github' rather than 'origin' or 'origin2')
Check if your gitHub identity is correctly declared in your local Git repository, as mentioned in the GitHub Help guide. (both user.name and github.name -- and github.token)
Then, stonean blog suggests (as does Marcio Garcia):
Aral Balkan adds: create a config file
You can also post the result of
to have more information as to why GitHub ssh connection rejects you.
Check also you did enter correctly your public key (it needs to end with '
==
').Do not paste your private key, but your public one. A public key would look something like:
(Note: did you use a passphrase for your ssh keys ? It would be easier without a passphrase)
Check also the url used when pushing (
git@github.com/...
, notgit://github.com/...
)Check that you do have a SSH Agent to use and cache your key.
Try this:
If that works, then it means your key is not being sent to GitHub by your ssh client.
This is a problem with your remote. When you do
git push origin master
,origin
is the remote andmaster
is the branch you're pushing.When you do this:
I bet the list does not include
origin
. To re-add the origin remote:Or, if it exists but is formatted incorrectly:
I got the same problem and I just added the content of ~/.ssh/id_rsa.pub to my account in GitHub. After that just try again
git push origin master
, it should work.I have the same problem and i think the firewall is blocking the git protocol. So in the end I have to resort to using https:// to fetch and push. However this will always prompt the user to enter the password...
here is the example what working for me (just to share with those cant use git:// protocol :)
if the above works, you can remove the origin and replace with