2017-03-02 73 views
0

阅读我有以下我.git/config权限被拒绝(公钥)。致命的:无法从远程仓库

1 [core] 
    2  repositoryformatversion = 0 
    3  filemode = true 
    4  bare = false 
    5  logallrefupdates = true 
    6 [remote "origin"] 
    7  url = [email protected]:monajalal/instagram-scraper.git 
    8  fetch = +refs/heads/*:refs/remotes/origin/* 

当我试图把更改主我得到这个错误:

$ git push -u origin master 
Permission denied (publickey). 
fatal: Could not read from remote repository. 

Please make sure you have the correct access rights 
and the repository exists. 

我曾尝试这两个但仍然得到错误:

2150 git remote set-url origin https://github.com/monajalal/instagram-scraper.git 
2154 git remote set-url origin [email protected]:monajalal/instagram-scraper.git 


[email protected]:~/computer_vision/instagram/instagram$ git log 
commit e69644389a5c7be65ae6eae14d74065e221600cb 
Author: Mona Jalal <[email protected]> 
Date: Wed Mar 1 17:48:00 2017 -0600 

    scrapy for instagram skeleton 
[email protected]:~/computer_vision/instagram/instagram$ git status 
On branch master 
nothing to commit, working directory clean 


$ uname -a ; lsb_release -a 
Linux pascal 3.13.0-62-generiC#102-Ubuntu SMP Tue Aug 11 14:29:36 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux 
No LSB modules are available. 
Distributor ID: Ubuntu 
Description: Ubuntu 14.04.5 LTS 
Release: 14.04 
Codename: trusty 

请建议修复。

+3

**“权限被拒绝(公钥)” **,你有没有在你的GitHub帐户中添加你的公钥('〜/ .ssh/id_rsa.pub')? –

回答

0

可能不是最好的解决方案,但考虑到有没有在我曾在github上我用下面的命令创建的存储库,它的工作:

git push -f origin master 
+0

我本来可以告诉你,你会告诉我你的错误信息 – VonC

+2

我编辑了我的答案,解释你为什么必须按-f。但是,再次提出关于Stack Overflow的问题时,你不能只提到“它没有用”。添加错误消息将帮助我们帮助您。 – VonC

2

如果你没有properly setup your ssh key with GitHub,你至少可以有(你提到)HTTPS尝试:

git remote set-url origin https://github.com/monajalal/instagram-scraper.git 

这会询问您的用户名(monajalal)您的GitHub账号/密码。

这将工作,因为您拥有该存储库,这意味着您有权推送。
确保你已经在本地提交了一个提交。

git add . 
git commit -m "new commit" 

git push -u origin master 

,你可能会被迫做git push -f的事实意味着目的地(远程GitHub库)是不是空的,但是包括它自己的提交(通常是README.mdLICENSE文件)

在这种情况下,它是最好的,与Git 2.9 or more,要做到:

git config --global pull.rebase true 
git config --global rebase.autoStash true 

然后

git pull 

这将重播您在本地提交(以及获取的形式)GitHub回购之上的提交。

然后,一个简单的git push -u origin master将工作。不需要强迫你的历史。

+0

我试着说你说的,但没有工作。 –

+0

你收到了什么错误信息? – VonC

相关问题