bitbucket无法从存储库中拉/推

时间:2015-04-20 12:31:40

标签: git bitbucket

所以基本上我有一个服务器,我有bitbucket git存储库设置。我已经使用它几个月了,现在我试图拉动蓝天,我得到以下错误:

ssh: Could not resolve hostname bitbucket.org: Name or service not known
fatal: Could not read from remote repository.

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

我100%确定我已正确设置了我的ssh-key。

git remote -v
origin  git@bitbucket.org:marel/tshirtmafia.git (fetch)
origin  git@bitbucket.org:marel/tshirtmafia.git (push)

有任何建议如何解决这个问题?如果您还有其他需要,请告诉我。

21 个答案:

答案 0 :(得分:24)

此问题是由不正确的git配置引起的。 在项目的根文件夹中打开.git文件夹,在配置文件中找到以

开头的行

url = git@bitbucket.org

很可能你在那里指定了协议并定义了url之类的 url = ssh://git@bitbucket.org

删除 ssh:// ,它应该为您完成。

答案 1 :(得分:20)

这对我有用。 我在NetworkPreference中添加了Google DNS服务器详细信息。

8.8.8.8,8.8.4.4

答案 2 :(得分:7)

我不知道这个问题的确切原因。首先要ping bitbucket.org。如果您收到回复,请按照以下步骤操作。

转到您回购的 .git 文件夹,使用您喜欢的编辑器。打开配置 文件并更改url值,如下所示。为我工作。

https://bitbucket.org/<username>/<repo>  -> https://<username>@bitbucket.org/<username>/<repo>

同样的步骤也会解决ssh问题,只需添加用户名。

在图片中是我的笔记回购,我保存了所有笔记 enter image description here

答案 3 :(得分:2)

我在git push中间取消了,然后开始出现。进行git pull && git fetch使其重新工作。

答案 4 :(得分:2)

错误消息表明存在DNS或网络问题。 如果这是一个Linux框,您可以调查一些网络命令的输出,例如ifconfighost bitbucket.org,并按照一些指南来解决特定环境的DNS问题。

答案 5 :(得分:1)

在Windows操作系统的主机(包括端口号22)中添加以下条目

104.192.143.1:22   bitbucket.org

主机文件位于C:\Windows\System32\drivers\etc

答案 6 :(得分:1)

这背后的唯一原因是您机器的“网络问题”,现在验证您的互联网连接并排除故障,但不会干扰 ssh。 可能是 DNS,也可能是 IP,因此只需将您的 Ip 切换为静态、添加 DNS 或重新启动路由器可能对您有用。

答案 7 :(得分:1)

在关闭VPN之前,我遇到了同样的问题。我不确定原因,但是如果有人解释我会很高兴。

答案 8 :(得分:1)

将bitbucket.org添加到您的主机文件

nano /etc/hosts

将bitbucket.org添加到主机文件中,如下所示

104.192.143.1   bitbucket.org

a screenshot showing how the host file looks like

保存文件并退出。 应该解决bitbucket。

答案 9 :(得分:1)

以防这些答案都没有帮助,在我的情况下,我使用的是“鬼”终端会话。 “whoami”的输出显示了一些未知的用户,解决方案是关闭并打开一个新的控制台窗口。

答案 10 :(得分:1)

这看起来很像我面临的问题。就我而言,问题与IPv6有关(详见:Can't push/pull to bitbucket via SSH when behind VPN. IPv6 issue?)。解决方法是将AddressFamily inet添加到.ssh/config条目下的Host bitbucket文件中,这会强制该连接使用IPv4。

答案 11 :(得分:1)

正如sreekumar所说,我们的想法是预设DNS并详细here

更改Windows 7上的DNS服务器设置

  1. 转到“控制面板”。
  2. 点击网络和互联网&gt;网络和共享中心&gt;更改适配器设置。
  3. 选择要为其配置Google Public DNS的连接。例如:
    • 要更改以太网连接的设置,请右键单击“本地连接”&gt;属性。
    • 要更改无线连接的设置,请右键单击“无线网络连接”&gt;属性。
    • 如果系统提示您输入管理员密码或进行确认,请键入密码或提供确认。
  4. 选择“网络”选项卡。在“此连接”下,使用以下项目,选择“Internet协议版本4(TCP / IPv4)”或“Internet协议版本6(TCP / IPv6)”,然后单击“属性”。
  5. 单击“高级”,然后选择“DNS”选项卡。如果其中列出了任何DNS服务器IP地址,请将其写下以供将来参考,并从此窗口中删除它们。
  6. 单击“确定”。
  7. 选择使用以下DNS服务器地址。如果首选DNS服务器或备用DNS服务器中列出了任何IP地址,请将其写下以备将来参考。
  8. 将这些地址替换为Google DNS服务器的IP地址:
    • 对于IPv4:8.8.8.8和/或8.8.4.4。
    • For IPv6:2001:4860:4860 :: 8888 and /或2001:4860:4860 :: 8844。
    • 仅适用于IPv6:您可以使用Google Public DNS64代替上一点中的IPv6地址。
  9. 重新启动您在步骤3中选择的连接。
  10. 测试您的设置是否正常
  11. 对要更改的其他网络连接重复此过程。

答案 12 :(得分:0)

我在Windows 10上通过Linux子系统使用git,只有@Saviour Dela上面的答案,对我有用。我遵循的流程如下:

  1. 从Windows命令提示符bitbucket获取IP ping bitbucket
  2. 将IP添加到/etc/hosts文件中。

答案 13 :(得分:0)

猜猜是什么...使用Visual Studio和Git Gui,我从git收到了相同的消息:Could not resolve host: bitbucket.org。 然后,我在Mac OS上使用Chrome进入了bitbucket,可以访问bitbucket。

在我的情况下,这是Parallels Windows虚拟机没有互联网连接! :-)

因此请先检查您的互联网连接。这可能是一个简单的“没有互联网连接”问题。

enter image description here

答案 14 :(得分:0)

好的,随着我逐渐掌握git,我想尝试对简单的内容提供反馈/选择。如果您使用的用户无权推送到所需的远程git存储库,通常会发生错误“ 无法从存储库中拉出/推送”。如果您是新手,这应该是您的来源

检查SSH代理:

  • 检查私钥:导航到当前用户的主目录,在Linux上是〜/ 。在此目录中检查文件夹〜/ .ssh 。如果存在,则可能正确设置了git。否则,如果该文件夹不存在,请在线找到有用的教程,以帮助您从头到尾在计算机上设置git。
  • 检查公用密钥::如果您实际上在主目录中找到了.ssh文件夹,请查看公用密钥和专用密钥。在线登录您的git帐户,然后导航到您的公共密钥,并将其与文件〜/ .ssh / id_rsa.pub 进行比较。如果内容相同,则您的计算机应该与远程服务器通信,没有任何问题。

检查远程:之所以在这里,是因为您确定自己的计算机上已安装git,并且您当前的私钥已将其对应的公钥复制到了在线git帐户中。但是您可能将推到错误的位置。首先检查您正在处理的分支,您是否推了正确的分支?类型;

5031fe3d989c6d1537a013fa6e739da23463fdaec3b70137d828e36ace221bd0

您应该看到列出的分支机构,其中突出显示了当前分支机构,或者名称前带有星号。如果您希望推送其他分支,请签出并继续。然后,确认您输入的网址正确,键入;

git branch

使用给定的输出来确认您正在向右推。如果没有输入;

git remote -v

,然后用

git remote remove <name>

这样,当您使用推送代码时

git remote add <name> <url>

所有内容均应相应推送。

如果在检查了上述步骤之后,发现您仍被锁定。请注意,我假设您的互联网连接正常。我显然会从头开始设置git-与重新安装它不同,只需对其进行设置,并确保您记下了用户设置以及正在使用的密码短语。你应该没事的。


示例网址:git@bitbucket.org:username / repository_name.git

答案 15 :(得分:0)

在我的情况下,发生这种情况是因为连接位于代理之后。

从命令行站点无法访问(无法ping)。但是,可以通过浏览器访问bitbucket.org。

解决方案是:

git config --global http.proxy http://proxi_ip_or_host:80

答案 16 :(得分:0)

This basically means that you are unable to establish a connection with the bibucket because your network isnt allowing you to do so. Try installing the certificates and then use the "git clone" command to clone your repo. c:-->program files -->git -->usr -->ssl -->cer and install the certificates by clicking on ca-bundle and ca-bundle.trust Worked for me . Let me know how it helps you :-)

答案 17 :(得分:0)

重启系统后实际上对我有用

答案 18 :(得分:0)

对于我来说,由于我机器上的代理设置,我遇到了这个问题。我禁用设置的那一刻,它开始起作用。

答案 19 :(得分:0)

对于linux-重新启动网络可能会有所帮助:

sudo service networking restart

答案 20 :(得分:0)

我遇到了同样的问题。 我在虚拟机上使用 Ubuntu。 重新启动虚拟机解决了问题。