文章首发于【博客园-陈树义】,点击跳转到原文《高效开发技巧:为什么你下载Git项目这么慢?》。

笔者所在公司采用的是 GitLab 进行版本管理,但许多同事下载 Git 项目的路径是这样的:

打开浏览器 -> 输入网址 -> 查找项目地址 -> 复制项目地址 -> 切换到命令行 -> 输入账号密码 -> 下载

这样每次去下载一个 Git 项目时,我们都要做一些重复性的动作,很浪费时间。但实际上,我们只需要进行一些简单的配置,只需要短短 5 分钟,就可以将上面的路径缩短成这样:

自动列出所有项目地址 -> 选择项目 -> 下载

这样可就大大减少了我们的重复劳动,提高了我们的效率。

熟悉 Git 的朋友应该猜出来了,第一种方式就是:HTTPS 协议下载,第二种方式就是:SSH 协议下载 + Hosting Provider。

下面我们就来讲讲如何使用 SSH 协议下载以及如何配置 Hosting Provider。

通过 SSH 协议下载项目,首先需要在本机生成公钥。

先查看系统用户目录下是否有 .ssh 文件夹,如果有的话,那说明你之前已经生成过公钥,则可以跳过生成公钥。运行下面的命令生成一个密钥:

ssh-keygen -t rsa -C "your_email"

运行后会提示输入密钥存储地址以及两次密码,这里我们都直接用 Enter 键跳过即可。接着运行下面的命令查看生成的公钥:

cat ~/.ssh/id_rsa.pub

如果你的 GitLab 不是用默认的 22 端口,那么你还需要在 .ssh 目录下建立一个 config 文件,并写入如下内容:

Host gitlab.xxxx.com
HostName gitlab.xxxx.com
Port 16333
PubkeyAuthentication yes
IdentityFile ~/.ssh/id_rsa

其中 Host 和 HostName 就是你所连接的 GitLab 地址。

生成公钥后,我们就需要登录 GitLab 站点,往我们的账号中添加秘钥了。点击 Settings -> SSH Keys 菜单,把刚刚的公钥添加进去。

之后选择任何一个项目,复制其ssh的项目地址,第一次时会提示是否接受服务器的密钥,选择是就可以了。正常情况下,都可以顺利下载。

配置了 SSH Key 之后,我们下载项目的时候就可以直接下载项目,不需要输入帐号和密码。但我们寻找项目的时候还需要登录 GitLab 去找项目的ssh地址,这个步骤显得有点繁琐。

其实我们通过 SmartGit 的 Hosting Provider 功能就可以直接查看所有项目,需要下载某个项目直接点击就可以下载了。

提示:SmartGit 是一款 Git 版本管理可视化工具,可以点击这里[下载](Download Git Client SmartGit)。

配置 Hosting Provider 功能,点击 Repository 菜单的 clone 选项,在窗口选择Add Providing Hosts。

在弹出的窗口填入相关信息,点击添加即可。

其实 Access Token 信息可以在 GitLab 的 Account 菜单中获取到。

配置完成后,下次 clone 项目的时候就可以看到对应的 Providing Hosts 选项。

选择对应的 Providing Hosts 选项,就可以看到所有的项目列表啦。

文章首发于【博客园-陈树义】,点击跳转到原文[《高效开发技巧:SSH秘钥快速下载Git项目》(http://www.cnblogs.com/chanshuyi/p/quick_download_git_project.html)。

高效开发技巧:为什么你下载Git项目这么慢?的更多相关文章

  1. 使用Eclipse上传/下载Git项目

    使用Eclipse上传/下载Git项目 前提: Eclipse已安装EGit插件 已拥有GitLab / GitHub / 其它Git托管服务账号 SSH方式 配置 配置Git信息 配置用户信息 Ec ...

  2. 使用SSH快速下载Git项目

    文章首发于[博客园-陈树义],点击跳转到原文使用SSH快速下载Git项目. Git下载项目的几种方式 Git是常用的代码版本技术,而GitLab则是开源的Git版本管理软件,GitLab是最受欢迎的版 ...

  3. 多人开发的git项目如何保持提交日志为一条直线?

    多人开发的git项目如何保持提交日志为一条直线? 一.Git的项目的git常用操作 a)Git clone 项目地址 从远程仓库克隆项目到本地 b)Git pull 从当前分支拉取更新代码 c)Git ...

  4. AngularJS进阶(三十六)AngularJS项目开发技巧之利用Service&Promise&Resolve解决图片预加载问题(后记)

    AngularJS项目开发技巧之利用Service&Promise&Resolve解决图片预加载问题(后记) 前言 在"AngularJS项目开发技巧之图片预加载" ...

  5. AngularJS进阶(三十)AngularJS项目开发技巧之图片预加载

    AngularJS项目开发技巧之图片预加载 绪 项目(移动端采用Ionic 框架)开发完毕,测试阶段发现移动APP首页的广告图片(图片由服务器端返回相应url地址)很难加载,主要原因还是网速.如下图左 ...

  6. Git项目协同开发学习笔记2:项目库开发协作相关命令

    之前介绍了如何用git构建项目库及其后续操作的问题,但主要还是个人的操作问题,不太涉及到项目协作方面的问题,所以来说下这块.传送门在这里(后面的可以不用看了). 1.同步 首先就式同步问题:在项目协作 ...

  7. 微信小程序入门与实战 常用组件API开发技巧项目实战*全

    第1章 什么是微信小程序? 第2章 小程序环境搭建与开发工具介绍 第3章 从一个简单的“欢迎“页面开始小程序之旅 第4章 第二个页面:新闻阅读列表 第5章 小程序的模板化与模块化 第6章 构建新闻详情 ...

  8. 【开发工具】-- IDEA集成Git在实际项目中的运用

    1.企业实际项目中Git的使用 在实际的企业项目开发中,我们一般Java的项目在公司都有自己的局域网代码仓库,仓库上存放着很多的项目.以我工作过的公司如华为的项目,一般是存放在企业内部的CodeHub ...

  9. git下载自己项目到本地

    git下载自己项目到本地 假如外出工作,需要在另一台电脑上面pull自己的某个git远程项目到本地 $ git init $ git pull https://github.com/TTyb/54qj ...

随机推荐

  1. spring boot + druid + 封装JdbcTemplate

    本源码内容如下: spring boot项目 用的druid连接池 druid监控页面配置 数据操作用spring jdbctemplate 进一步封装spring jdbctemplate支持用对象 ...

  2. ASP.NET Core 一步步搭建个人网站(3)_菜单管理

    上一章,我们实现了用户的注册和登录,登录之后展示的是我们的主页,页面的左侧是多级的导航菜单,定位并展示用户需要访问的不同页面.目前导航菜单是写死的,考虑以后菜单管理的便捷性,我们这节实现下可视化配置菜 ...

  3. APP上传APP Store遇到的各种问题

    内容含敏感话题或对苹果不友好的信息(如苹果婊) 使用了友盟的统计SDK,获取了IDFA但是上传填写无广告 采用友盟IDFA的sdk,并用友盟的默认淘宝页面广告,被告知和产品内容不符(最近) App在i ...

  4. ASP.NET Cookie 概述

    什么是 Cookie? Cookie 是一小段文本信息,伴随着用户请求和页面在 Web 服务器和浏览器之间传递.Cookie 包含每次用户访问站点时 Web 应用程序都可以读取的信息. 例如,如果在用 ...

  5. JDBC 程序实例小练习

    JDBC 程序实例问题 编程实现如下功能:在数据库中建立一个表,表名为student,其结构为学号.姓名.性别.年龄.英语.JavaSE程序设计.初级日语.总分,在表中输入多条记录. 学生的总分信息, ...

  6. CPU31X-2DP通过DP网络连接远程IO站

    一.远程IO站介绍 二.该DP网络系统结构 三.组态DP主站 1.组态机架硬件配置 2.设置profibus属性,主站地址为2,如下图 3.完成主站组态 四.组态远程IO从站ET200M 1.接口模块 ...

  7. FastJson--阿里开源的速度最快的Json和对象转换工具

    示例 import java.util.ArrayList; import java.util.List; import java.util.HashMap; import java.util.Map ...

  8. Mysql 锁基础

    本文同时发表在https://github.com/zhangyachen/zhangyachen.github.io/issues/53 lock与latch 在数据库中,lock与latch都可以 ...

  9. 599. Minimum Index Sum of Two Lists

    Suppose Andy and Doris want to choose a restaurant for dinner, and they both have a list of favorite ...

  10. Oracle ADG搭建

    Oracle Active Data Guard搭建 一:安装 1.基础环境配置 1.1.开启强制日志记录 DG日志发送方式中ARCH进程和LGWR进程的ASYNC模式都是基于日志同步的,所以我们必须 ...