记录一下今天 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. Ubuntu包管理工具整理

    概述 常用的包管理包含三类工具:dpkg.apt和aptitude.1 dpkg 主要是对本地的软件包进行管理,本地软件包包括已经在本地安装的软件包和已经下载但还没有安装的 deb 文件,不解决依赖关 ...

  2. GCD与dispatch_group总结

    GCD 可以看作是集合类的操作: 集合是queue,元素是block: 集合只能添加对象,删除对象由系统完成. 同理,NSOperationQueue也可以看作是一个集合管理器. dispatch_g ...

  3. 设置mySql的编码方式为utf-8

    检查命令: mysql> show variables like '%char%'; 期望结果: 使用mysql命令设置: 如果仍有编码不是utf8的,请检查配置文件,也可使用mysql命令设置 ...

  4. CF992E Nastya and King-Shamans_线段树

    Code: #include<cstdio> #include<algorithm> using namespace std; const int maxn = 200000 ...

  5. qt 摄像头程序

    http://www.oschina.net/code/snippet_124925_3789?p=3#comments http://www.codesoso.net/Search?q=qt+%C9 ...

  6. [luogu] P4040 [AHOI2014/JSOI2014]宅男计划(贪心)

    P4040 [AHOI2014/JSOI2014]宅男计划 题目背景 自从迷上了拼图,JYY就变成了个彻底的宅男.为了解决温饱问题,JYY不得不依靠叫外卖来维持生计. 题目描述 外卖店一共有N种食物, ...

  7. 移动端ios兼容问题

    IOS系统bug: 1)input无法输入的问题: -webkit-user-select:none;改成-webkit-user-select:auto: 2)滚动不流畅(overflow-y:au ...

  8. C#-入门思维导图

    C#-入门思维导图 百度云盘 链接:http://pan.baidu.com/s/1jI5zMS2 密码:0ypc 如有错误,请告知我

  9. jquery访问ashx文件示例

    转自原文jquery访问ashx文件示例 .ashx 文件用于写web handler的..ashx文件与.aspx文件类似,可以通过它来调用HttpHandler类,它免去了普通.aspx页面的控件 ...

  10. LintCode-交叉字符串

    给出三个字符串:s1.s2.s3,推断s3是否由s1和s2交叉构成. 您在真实的面试中是否遇到过这个题? Yes 例子 比方 s1 = "aabcc" s2 = "dbb ...