记录一下今天 git 拉代码遇到的一些异常情况;

无论是项目目录下 git pull 还是直接 git clone 都不能正常拉代码;

  • 异常情况1
ssh: connect to host gitee.com port 23: Connection timed out
fatal: Could not read from remote repository.

我把 ssh: connect to host gitee.com port 23: Connection timed out 当做关键词百度了一下,很多文章都让在 ~/.ssh 目录创建个 config 文件;PreferredAuthentications 印象中是在多账户的情况下配置的,还是抱着试一试的想法测试了一下,发现在我这边是无效的。

  Host gitee.com
  User git
  Hostname ssh.gitee.com
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/id_rsa
  Port 443

ssh -T git@gitee.com 测试报错 ssh: Could not resolve hostname ssh.gitee.com: Name or service not known

  • 异常情况2

    针对 ssh -T 响应的错误搜索了一下,不是让修改 host 文件就是给一段 Python 代码;感觉不太对直接跳过了。

    嗯…回到错误1换种思路想一下,既然是报错 connect to host gitee.com port 23: Connection timed out ,说明把本地使用ssh的端口当做 gitee 连接的端口了,那么就换种思路,在使用命令时声明端口呢?
git clone ssh://git@gitee.com:22/xahy/xahy-001.git



发现成功拉取代码了。

     

     

虽然ok了,还是思考一个问题;

因为第一次遇到这种问题;

之前使用其他的服务器修改了端口,

拉取代码都是没有任何问题。

复盘之前的操作,发现使用的端口就是当前ssh使用的端口

是不是就是直接使用的当前服务器 ssh 配置声明的端口?

修改 shh 配置文件,验证一下。

vi /etc/ssh/ssh_config
vi /etc/ssh/sshd_config

///以上这2个文件,增加  Port 22

重启ssh服务或者重启服务器

systemctl restart sshd

重新拉取代码,发现ok了



在修改 ssh 配置时还遇到了 ssh_exchange_identification: Connection closed by remote host错误;

原因是将端口声明为 Port 443了,修改为Port 22就可以了。

不过说明这种方案也是可行的,而且无需特意声明端口。

     

     

总结一下,

遇到 git pull 或者 git clone 无响应;

可以先检查ssh 配置是否声明开启22端口;

或者重新 clone 项目,在 clone 时声明22端口;

就可以成功操作了;

以上两种方案任选一都可以。

     

     

文章到这儿就结束了。

git clone 和 git pull 代码无响应的更多相关文章

  1. git clone 和 download 不一样,能用git clone 就用git clone,download的代码,经常出现安装bug

    git clone 和 download 不一样,能用git clone 就用git clone,download的代码,经常出现安装bug

  2. Git clone、git reset

    一,git clone 1,git clone某一个分支 git clone -b <branch> <remote_repo> 2,.git 文件太大 :clone的时候,可 ...

  3. git clone、git pull和git fetch的用法及区别

    声明:码字不易,转载请注明出处,欢迎文章下方讨论交流.Git 常用命令速查表 最近在一个学习小组里学习AI的课程,我们所有的学习资料和homework都放在gitlab上.今天一个小队友从gitlab ...

  4. 【Git】git clone与git pull区别

    从字面意思也可以理解,都是往下拉代码,git clone是克隆,git pull 是拉.但是,也有区别: 从远程服务器克隆一个一模一样的版本库到本地,复制的是整个版本库,叫做clone.(clone是 ...

  5. git clone 仓库的部分代码

    对于较大的代码仓库来说,如果只是想查看和学习其中部分源代码,选择性地下载部分路径中的代码就显得很实用了,这样可以节省大量等待时间. 比如像 Chromium 这种,仓库大小好几 G 的. clone ...

  6. git clone和git pull的区别

    1.需不需要本地文件夹是仓库 git clone是将整个工程复制下来所以,不需要本地是仓库(没有.git文件夹)   git clone git pull需要先初始化本地文件夹文一个仓库   git ...

  7. git clone 指定分支 拉代码

    1.git clone 不指定分支 git clone http://10.1.1.11/service/tmall-service.git 2.git clone 指定分支 git clone -b ...

  8. 在linux下执行git clone、git pull 、git push等操作免密

    1. 通过ssh密钥实现 ssh-keygen -t rsa -C "你的邮箱" -f "自己定义的目录" 打开: id_rsa.pub ,将文件内容复制到 g ...

  9. Git知识总览(一) 从 git clone 和 git status 谈起

    本篇博客是整理git相关知识的第一篇,因为之前一直是用SourceTree对Git的命令行操作用的不是特别熟,于是乎过了一遍ProGit(链接:https://git-scm.com/book/zh/ ...

随机推荐

  1. QA小课堂:一个网站或者APP开发要多少钱

    经常遇到朋友问我:“开发一个京东商城需要多少钱?开发一个滴滴打车需要多少钱?”类似这样的需求,就连我这样一名伪开发者都不愿意去骗客户或者朋友,因为这种问题是很难回答出来的.为什么这么说呢?要知道类似京 ...

  2. [分享]前端javascript插件(均开源)

    记录并分享一些自己使用过的插件,便于以后有相应的功能需要使用可以及时想到. 1:数字插件countUp.js 功能:用于动态显示数字的增加和减少 项目github地址:http://inorganik ...

  3. P3387 【模板】缩点 && P3388 【模板】割点(割顶)

    Tarjan算法 应用: 有向图的强连通分量 无向图割点和桥 双连通分量 接下来主要谈论前面两者的应用(主要是第三种还没学会) 算法简要介绍 我们需要先理解一下知识:搜索树 有向图的搜索树的4种边,如 ...

  4. JS iframe给父类传值

    父类页面 <html><head> <script type="text/javascript">            function Ge ...

  5. 在centos里安装Nginx

    (1)下载Nginx的RPM包 wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx ...

  6. [LeetCode] 350. 两个数组的交集 II intersection-of-two-arrays-ii(排序)

    思路: 先找到set的交集,然后分别计算交集中的每个元素在两个原始数组中出现的最小次数. class Solution(object): def intersect(self, nums1, nums ...

  7. struts2解决动态多文件上传的问题(上传文件与数据库字段一一对应)(转)

    struts2多文件上传我想只要会用struts2的朋友都不会陌生,但是怎么在action中根据用户上传的文 件把文件路径写到数据库中对应的字段上呢?ps:我的意思是这样,页面上有固定的5个上传文件的 ...

  8. [WPF,XAML] 跳动的心

    原文:[WPF,XAML] 跳动的心 没什么艺术细胞,原谅,原谅! <Canvas Width="0" Height="0"> <Canvas ...

  9. CSDN开博一周年--总结、感想和未来规划

    2012年9月22日,我在CSDN发表了第1篇博文-为了忘却的纪念,我的天龙游戏生涯.本文讲述了我大学期间玩网络游戏-天龙八部的故事. 在大学期间,实际上我也有自己的帐号-huoyingfans,主要 ...

  10. thinkphp 同一字段不同查询条件实现

    搞定了 另外区间查询还可以支持更多的条件,只要是针对一个字段的条件都可以写到一起,例如:$map['name'] = array(array('like','%a%'), array('like',' ...