超详细!linux环境git clone探坑录

简介: 超详细!linux环境git clone探坑录

一、背景



今天在linux上执行git clone git@bitbucket.org:xxxxxxxxx.git时,一直卡住不动,等了十几分钟之后出现如下的错误:


ssh: connect to host bitbucket.org port 22: Connection timed out
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.


意思是让我们检查repository是否存在,或者是否有权限访问这个repository。好吧,这个就是我创建的,怎么可能不存在呢?那就是权限的问题,那就配置ssh吧。


二、SSH配置



1. ssh目录不存在


[root@192 ~]# cd ~/.ssh
-bash: cd: /root/.ssh: No such file or directory


  1. 解决办法,执行如下命令
[root@192 ~]# ssh localhost


  1. 原因:.ssh 是记录密码信息的文件夹,如果没有登录过root的话,就没有 .ssh 文件夹,因此登录 localhost ,并输入密码就会生成了。


2. 如何配置Bitbucket的ssh


  1. 生成RSA算法的公私钥
[root@192 ~]# ssh-keygen 
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): #这里是输入公私钥存放路径,默认就行-直接enter


  1. 输入私钥口令


[root@192 ~]# ssh-keygen 
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):  
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): #这里输入私钥口令
Enter same passphrase again: # 重复输入私钥口令
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
4c:80:61:2c:00:3f:9d:dc:08:41:2e:c0:cf:b9:17:69 emmap1@myhost.local 
The key's randomart image is:
+--[ RSA 2048]----+
|*o+ooo.          |
|.+.=o+ .         |
|. *.* o .        |
| . = E o         |
|    o . S        |
|   . .           |
|     .           |
|                 |
|                 |
+-----------------+


  1. 查看是否生成成功
[root@192 ~]# ls ~/.ssh 
id_rsa  id_rsa.pub


  1. 开启SSH代理服务器
[root@192 ~]# eval `ssh-agent` 
Agent pid 9700


  1. 添加密钥
$ ssh-add ~/.ssh/id_rsa


  1. 添加config文件
[root@192 ~]# cd ~/.ssh
[root@192 .ssh]# vim config


  1. config文件内容如下:
host bitbucket.org # git地址
 User git #登录名,这里需要填写你自己的,其它可以不改
 IdentityFile ~/.ssh/id_rsa #密钥路径


  1. 将公钥添加到Account settings

640.png


  1. 检验是否配置成功
[root@192 .ssh]# ssh -T git@bitbucket.org
logged in as BobTom
You can use git or hg to connect to Bitbucket. Shell access is disabled


3. 执行ssh -T git@bitbucket.org卡住


这里有可能是网络卡住的问题,解决办法如下:


vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
203.208.39.99 github.com
104.192.141.1 bitbucket.org


追加最后面一条就可以解决问题。


三、结果检验



[root@192 test]# ll
total 0
[root@192 test]# git clone git@bitbucket.org:BobJavacfox/car_wash_api.git
Cloning into 'car_wash_api'...
remote: Counting objects: 170, done.
remote: Compressing objects: 100% (80/80), done.
remote: Total 170 (delta 76), reused 142 (delta 67)
Receiving objects: 100% (170/170), 23.14 MiB | 3.10 MiB/s, done.
Resolving deltas: 100% (76/76), done.
[root@192 test]# ll
total 4
drwxr-xr-x. 7 root root 4096 Dec 10 00:12 car_wash_api
[root@192 test]#


执行速度超级快,而且不用每次都输入密码,是不是很方便。很有用是吧!!!


相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
目录
相关文章
|
1月前
|
安全 Linux 网络安全
Linux环境中安装和使用Paramiko
Linux环境中安装和使用Paramiko
88 12
|
1月前
|
Java 关系型数据库 MySQL
Linux环境
Linux环境
35 5
|
14天前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
128 4
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
|
11天前
|
Linux UED iOS开发
|
16天前
|
Ubuntu 应用服务中间件 Linux
Linux下搭建Nginx环境的搭建
Linux下搭建Nginx环境的搭建
|
19天前
|
监控 Linux 云计算
Linux操作系统在云计算环境中的实践与优化###
【10月更文挑战第16天】 本文探讨了Linux操作系统在云计算环境中的应用实践,重点分析了其在稳定性、安全性和高效性方面的优势。通过具体案例,阐述了Linux如何支持虚拟化技术、实现资源高效分配以及与其他开源技术的无缝集成。文章还提供了针对Linux系统在云计算中的优化建议,包括内核参数调整、文件系统选择和性能监控工具的应用,旨在帮助读者更好地理解和应用Linux于云计算场景。 ###
22 3
|
27天前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
223 3
|
2月前
|
消息中间件 分布式计算 Java
Linux环境下 java程序提交spark任务到Yarn报错
Linux环境下 java程序提交spark任务到Yarn报错
39 5
|
2月前
|
Java Linux Python
Linux环境下 代码java调用python出错
Linux环境下 代码java调用python出错
46 3
|
2月前
|
Linux 开发工具 git
linux自建仓库git之钩子不生效
linux自建仓库git之钩子不生效