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

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

一、背景



今天在linux上执行git clone [email protected]: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 [email protected] 
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 [email protected]
logged in as BobTom
You can use git or hg to connect to Bitbucket. Shell access is disabled


3. 执行ssh -T [email protected]卡住


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


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 [email protected]: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]#


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


目录
相关文章
|
7月前
|
存储 NoSQL 开发工具
Git Clone 原理详解:为什么它比本地文件复制更快? -优雅草卓伊凡
Git Clone 原理详解:为什么它比本地文件复制更快? -优雅草卓伊凡
221 26
Git Clone 原理详解:为什么它比本地文件复制更快? -优雅草卓伊凡
|
2月前
|
存储 Linux 开发工具
Linux环境下使用Buildroot配置软件包
使用Buildroot可以大大简化嵌入式Linux系统的开发和维护工作,但它需要对Linux系统和交叉编译有深入的理解。通过上述步骤,可以有效地配置和定制软件包,为特定的嵌入式应用构建高效、稳定的系统。
354 11
|
3月前
|
网络安全 开发工具 git
配置本地环境以管理Git多账户SSH连接的方法
通过以上步駟设置后, 您可以轻松管理多個 Git 账户并且根据不同项目需求切换 SSH 密匙进行版本控制操作。
338 20
|
4月前
|
存储 监控 Linux
Linux环境锁定关键文件防止误删操作流程。
总结以上内容,在Linux环境下锁定重要文档避免误删涉及到多种技术手段与策略组合运作, 包括但不限于利用chatter指挥官固化文档状态至只读模式、运作ACL精准调整访问权利列表、编排自动化流程简
186 20
|
4月前
|
Linux
Linux环境下的UDEV机制及其与守护进程的关联
实际使用时管理员需要熟悉编写合适udev rules去满足特殊需求;同时也需要注意避免编写过度复杂导致无法预料结果rules.UDEVD虽然稳健但错误配置可能导致无法预料问题因此需谨慎处理相关配置工作.
196 16
|
4月前
|
存储 Linux
Linux环境下删除大文件后磁盘空间未释放问题诊断流程。
以上诊断流程涉及Linux底层机制与高级管理技能结合之处,并需要管理员根据实际环境灵活调整诊断策略与解决方案。
328 8
|
5月前
|
Linux 数据安全/隐私保护 iOS开发
推荐Linux环境下效能优良的双向文件同步工具
综合上述条件,对于Linux环境下的双向文件同步需求,Unison 和 Syncthing 是两个非常出色的选择。它们都有良好的社区支持和文档资源,适用于不同规模的环境,从个人使用到商业部署。Unison 特别适合那些需要手动干预同步过程、需要处理文件冲突解决的场景。而 Syncthing 更加现代化,适合需要自动、实时的数据同步与备份的环境。对于选择哪一个,这将取决于个人的使用场景和具体需求。
644 16
|
5月前
|
算法 安全 网络安全
git clone操作报错diffie-hellman-group1-sha1的解决方案
在处理这一问题时,需要确保了解相关操作的安全影响。`diffie-hellman-group1-sha1`算法被认为是不够安全的,这是因为随着计算能力的提高,`SHA-1`算法可以在合理的时间内被破解,而且其对应的 `1024位`Diffie-Hellman组也可能不够强大。因此,在确保Git操作的同时,也要考虑提升安全性的长期解决办法。强烈推荐与管理员或相关技术支持团队合作,升级和加强服务器端的安全配置。
167 12