有个同学问我Linux下想要克隆一个仓库怎么办,并给我发了一个word,记录了他的操作。看完之后我的血压都上来了,遂记之。

  下文分成两种情况,克隆一两个仓库,和克隆一大堆仓库。

一、只需要克隆一两个仓库

  这种情况有超级多解决办法,介绍几种常用的(以实用性排序):

1 导入到Gitee中

  对于常用仓库,直接从URL导入即可。示意图如下,就是新建仓库然后从URL导入,得到gitee访问链接,从而加速克隆。

2 先下载zip,再共享过去

  不管是gitee、github还是gitlab,网页上都有一个直接Download ZIP的选项,避免因为系统不同,文件在迁移之前出错。


  下载好之后,直接通过虚拟机的共享文件夹(如果不是虚拟机,就用u盘或其他外设)转移过去,或者直接拖过去就行。

使用xftp或者其他文件传输工具也行,只是个人觉得有点麻烦。

  注意:在Linux下,再进行解压!

直接拖文件夹,可能会因为Windows会在文件后加 EOF(End Of File)符号,而Linux不会,而出现异常。

  至于为什么Windows上能访问网页,Linux上不能,一方面是网络原因,另一方面有可能Linux不带桌面系统,没安装浏览器。

3 镜像源

  把需要克隆的仓库的github.comgitlab.com换成现在国内的镜像站。我大二用的镜像站hub.fastgit.org在大三已经挂了,所以这种方法的不靠谱程度可见一斑。新的镜像站我也再没找过了。

  临时找镜像站也可以,注意设置一下搜索引擎的搜索时间。最好是限定在1年之内,找个最新的可用的镜像站。现在2023/2/17,很好用的比如:ghproxy.com,网址和使用说明见:https://ghproxy.com/

注意

  需要额外指出的是:以上两种方式下克隆的git仓库,并不会修改git仓库里面的文件的git链接。所以假设这个仓库引用了其他仓库作为子模块,或者这个仓库的初始化需要克隆其他的仓库,就等于需要克隆一堆库!就不适用于上面那种方法,请接着看下文。

二、需要克隆一大堆库

  首先可以说明的是,改hosts一般没什么用。

  第一,要解决的问题是无法访问github和gitlab,我们凭什么觉得dns服务器遍历迭代解析出来的都不能访问,而自己在网上搜的github和gitlab的ip地址能访问?
  第二,网友的文章和我们处于错位时空,我们凭什么认为自己所在的地区、当前时间能够访问网友能访问的ip地址?
  第三,要是真的碰上了一个能访问的ip地址,克隆到一半挂了不是还得继续找新的?
  第四,即使不怕麻烦,我们凭什么相信自己知道怎么改hosts、刷新dns缓存?

  所以如果真有一大堆库要克隆,还是弄个“网络”吧。

  接下来,仅介绍一下为什么已经连上“网”了终端的git还是很慢

Linux终端git太慢

  相信看这一步的,都是Linux网页已经能够正常访问github和gitlab(投来一个懂的都懂的眼神),但是还是clone不下来吧。

  先说一个结论:Linux终端要重新配置一下。

  配置方法如下:在~/.bashrc中,把https和http的端口改成你的http的端口,把ftp的改成你的socks端口,然后重启终端即可。

sudo gedit ~/.bashrc
export https_proxy=http://127.0.0.1:8889
export http_proxy=http://127.0.0.1:8889
export ftp_proxy=socks5://127.0.0.1:1089
git config --global http.https://github.com.proxy http://127.0.0.1:8889

末:我的建议是,如果能访问github和gitlab,就不要在这个网站上搜解决方法了,去更广阔的互联网上搜!你会发现教程真的蛮多蛮详细的。

【经验】Git|Linux终端git太慢,改hosts、复制文件夹、用镜像源?不不不不不的更多相关文章

  1. SecureCRT SSH Linux中不显示彩色 字体颜色、文件夹和文件显示的颜色区别开解决办法

    SecureCRT SSH Linux中不显示彩色 字体颜色.文件夹和文件显示的颜色区别开解决办法 实验环境: 刚开始我的情况是这样的:带颜色的显示不出来,然后还能看到,此处有内容,猜测是Secure ...

  2. matrix-gui-2.0 将javascript文件夹改成js文件夹

    /******************************************************************************** * matrix-gui-2.0 将 ...

  3. linux复制文件夹、重命名文件夹、删除文件夹

    linux中复制命令为cp(即copy缩写),重命名使用mv命令(即move缩写)来实现,删除命令为rm(即remove缩写). 如果操作对象是单个文件,复制和删除以及重命名很简单,如下: cp a. ...

  4. Linux 终端访问 FTP 及 上传下载 文件

    今天同事问我一个问题,在Linux 下访问FTP,并将文件上传上去. 我之前一直是用WinSCP工具的. 先将文件从linux copy到windows下,然后在传到ftp上.google 一下. 方 ...

  5. Linux 终端访问 FTP 及 上传下载 文件[转]

    1.      Linux 终端连接FTP [oracle@Dave ~]$ ftp 10.85.7.97 Connected to 10.85.7.97. 220 Serv-U FTP Server ...

  6. 使用git push命令如何忽略不想提交的文件夹或者文件

    如下场景是在window下的操作. 在使用node的时候有个node_modules文件夹很大,一般情况下不想提交,忽略的办法如: 方法一(来自评论区):直接在仓库根目录:执行命令echo 'node ...

  7. linux如何复制文件夹和移动文件夹

    linux下文件的复制.移动与删除命令为:cp,mv,rm一.文件复制命令cp 命令格式:cp [-adfilprsu] 源文件(source) 目标文件(destination)cp [option ...

  8. linux共享文件samba安装与java读取外部文件夹方法

    测试环境RedHat 6.4 一.安装 samba组件安装: (1)首先用“rpm –qa |grep samba”命令检验系统samba服务是否安装. #rpm –qa |grep samba sa ...

  9. 在Linux中复制文件夹下的全部文件到另外文件夹

    https://jingyan.baidu.com/article/656db918f83c0de380249c5a.html 在Linux系统中复制或拷贝文件我们可以用cp或者copy命令,但要对一 ...

  10. linux 下正则匹配时间命名格式的文件夹

    用正则表达式匹配时间格式命名的文件夹 ls mypath | grep -E "[0-9]{4}-[0-9]{1,2}" mypath为需要查询的目录 查询出来的文件夹格式为:例 ...

随机推荐

  1. VScode中C/C++调试文件配置

    VScode中C/C++调试文件配置 //launch.json { "version": "2.0.0", "configurations" ...

  2. ABB喷涂机器人控制柜维护保养

    ABB喷涂机器人的管理与维护保养目的是减少机器人的故障率和停机时间,充分利用机器人这一生产要素,最大限度地提高产效率.喷涂机器人维修与保养在企业生产中尤为重要,直接影响到系统的寿命,必须精心维护. A ...

  3. ollama-deepseek 部署

    选择云资源 选用智星云 4090 高性能 1.57 一小时 windows操作系统 可以修改带宽来增加下载速度 使用mstsc远程登录 使用ollama https://ollama.com/ oll ...

  4. Ubuntu 部署饥荒联机版服务器 Linux DST_Dedicate_Server

    0. 文件夹 - ~ |- ~/steamcmd # 装的是steamcmd_linux.tar.gz以及其解压出来的东西 |- ~/DST # 装的是DST服务器可执行文件.世界存档.世界模板 |- ...

  5. Typecho 数据备份及程序升级详细步骤教程

    数据库备份看自己,习惯性更新前都备份,出错直接滚回去 数据库备份 直接在宝塔数据库那个模块备份即可,备份完建议下载本地或者保存到OSS 备份网站文件 理论上只需要备份/usr/目录即可,因为这个目录包 ...

  6. ETL工程师

    Python Flume DataX HDFS 数仓建模分层:ODS.DIM.DWD.DWS.APS Kettle.Informatica SQL(Oracle.MySQL)

  7. 【VMware by Broadcom】VMware 产品套件(2025)

    VMware 被 Broadcom 收购后(现为 VMware by Broadcom),重新调整了其产品部门并最终优化为了四个,分别是:VMware Cloud Foundation(VCF)部门. ...

  8. ctfhub-rce-部分做题记录

    命令注入 检查网页显示内容,可以直接看到源代码.大致意思是:检查用户输入的 GET 请求,判断用户是否输入了 ip 信息.如果输入了 ip 信息,则使用用户输入的这个 ip 数据执行一个 shell ...

  9. Selenium Javascript 滚动条操作

    js在selenium有许多应用,最主要的有滚动条操作. 实现功能:进入百度搜索结果页->滚动条分别滚到到顶部.底部及指定元素位置. 使用格式: driver.execute_script('w ...

  10. Java的数据类型详解

    java的为强类型语言,所以要求变量的使用要严格符合规定,所有的变量都必须先定义后在使用: 什么是变量? 变量顾名思义,就是可变的量:是程序中最基本的存储单元,其要素要包括:变量名.变量类型和作用域: ...