记录一下今天 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. PHP单词表

    输出语句printechovar_dumpprint_rprintf变量的操作unset预定义变量$_SERVER$_GET$_POST$_REQUEST$_COOKIE,$_SESSION 会话技术 ...

  2. HTML大纲

  3. URL回车后发生了什么

    1.解析URL ________________________________________________________________________ 关于URL: URL(Universa ...

  4. 从url获取参数有中文时会出现乱码的问题

    http://192.168.1.133/v2?groupId=58&opFlag=1&result=C,B,B,B,D&Name=本人很帅 我们js获取的url中的Name其 ...

  5. ajax第一天总结

    AJAX开发步骤 步一:创建AJAX异步对象,例如:createAJAX() 步二:准备发送异步请求,例如:ajax.open(method,url) 步三:如果是POST请求的话,一定要设置AJAX ...

  6. to_string函数(将数字转换成字符串)

    一般常用的转换字符串的方法std::stringstream,但是效率较低;目前C ++11提供了std::to_string 效率方面:C风格的sprintf()没有动态分配内存效率最高;std:: ...

  7. Django路由URL

    URL配置(URLconf)就像Django所支撑网站的目录.URL与要为该URL调用的视图函数之间的映射表. URLconf配置 样式: from django.conf.urls import u ...

  8. Linux版本分支图

  9. -java转json hibernate懒加载造成的无限递归问题

    1.在判断到底是谁维护关联关系时,可以通过查看外键,哪个实体类定义了外键,哪个类就负责维护关联关系. JoinColumn(name="pid") 2. 在保存数据时,总是先保存的 ...

  10. Spring配置文件中指定init-method属性的作用

    bean 配置文件属性 init-method 用于在bean初始化时指定执行方法,用来替代继承 InitializingBean接口.相关链接:https://www.cnblogs.com/Joe ...