当前位置:  开发笔记 > 编程语言 > 正文

无法Git-push master到Github - 'origin'似乎不是git存储库/权限被拒绝

如何解决《无法Git-pushmaster到Github-'origin'似乎不是git存储库/权限被拒绝》经验,为你挑选了3个好方法。

这个问题与我理解rebase,分支和合并以及问题有关

如果您的远程列表中有teamMate,您如何提交您的github帐户?

我发现其他人也有同样的问题.问题似乎与/etc/xinet.d/有关.

问题:无法将我的本地分支推送到Github的主分支

我跑

git push origin master

我明白了

fatal: 'origin' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

错误消息告诉我分支'origin'不在我的本地git存储库中.这样,Git就会停止连接到Github.

这很奇怪,因为我没有删除分支'origin'.

我的git树是

  dev
* master
  ticgit
  remotes/Math/Math
  remotes/Math/master
  remotes/origin/master
  remotes/Masi/master

当你在当地的Git中拥有teamMate的分支时,如何将你的本地分支推送到Github


VonC的答案解决了主要问题.我把一个passphares放到我的ssh键上.

我跑

$git push github master     

我明白了

Permission denied (publickey).
fatal: The remote end hung up unexpectedly

似乎我需要以某种方式为Git提供密码.

你怎么能让Github问你的密码而不是依赖ssh密钥?



1> VonC..:

是什么

$ git config --get-regexp '^(remote|branch)\.'

返回(在你的git仓库中执行)?

Origin只是引用远程Git存储库的默认命名约定.

如果它没有引用GitHub(而是指向你的队友存储库的路径,可能不再有效或可用的路径),只需添加另一个来源,就像在Bloggitation条目中一样

$ git remote add origin2 git@github.com:myLogin/myProject.git
$ git push origin2 master

(我实际上会使用名称'github'而不是'origin'或'origin2')


权限被拒绝(publickey).
致命:远程端意外挂断

检查您的gitHub标识是否在本地Git存储库中正确声明,如GitHub帮助指南中所述.(user.name和github.name - 和github.token)

然后,stonean博客建议(和Marcio Garcia一样):

$ cd ~/.ssh
$ ssh-add id_rsa

Aral Balkan补充说:创建一个配置文件

解决方案是在〜/ .ssh /下创建一个配置文件,如本页OS X部分底部所述.

这是我添加的文件,根据页面上的说明,我的推送再次开始工作:

Host github.com
User git
Port 22
Hostname github.com
IdentityFile ~/.ssh/id_rsa
TCPKeepAlive yes
IdentitiesOnly yes

你也可以发布结果

ssh -v git@github.com

了解更多有关GitHub ssh连接拒绝您的原因的信息.

检查您是否输入了正确的公钥(它需要以' ==' 结尾).
不要粘贴您的私钥,而应粘贴您的私钥.公钥看起来像:

ssh-rsa AAAAB3== tek...@gmail.com 

(注意:你是否为你的ssh密钥使用密码短语?没有密码短语会更容易)

检查推送时使用的URL(git@github.com/...,不是git://github.com/...)

检查您是否有SSH代理使用并缓存密钥.

试试这个:

 $ ssh -i path/to/public/key git@github.com

如果可行,则表示您的密钥未被ssh客户端发送给GitHub.



2> Sarah Mei..:

这是您的遥控器的问题.当你这样做时git push origin master,origin是遥控器,master是你正在推动的分支.

当你这样做:

git remote

我打赌这个清单不包括在内origin.要重新添加原始远程:

git remote add origin git@github.com:your_github_username/your_github_app.git

或者,如果它存在但格式不正确:

git remote rm origin
git remote add origin git@github.com:your_github_username/your_github_app.git



3> johnnygoodma..:

VonC的答案是最好的,但对我有用的部分非常简单,并且有很多其他可能的答案.如果你像我一样,你在运行"入门指南"教程时遇到了这个问题而你没有设置公共/私有SSH密钥.

如果是这样,试试这个:

    $>cd ~/.ssh

    $>ls

    如果ls的输出是known_hosts其他内容,请访问:http://help.github.com/mac-key-setup/并开始按照"生成密钥"部分中的说明进行操作.

运行这些指令后,我的"git push origin master"命令工作.

推荐阅读
乐韵答题
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有