Git 学习笔记之(一) 使用 git gui 从github上下载代码
背景:
目前一些开源代码均在 GitHub上管理的,包括自己写的代码也可以放在上面进行管理。但问题是,当你换一台电脑,想要将你自己放在 GitHub 上的代码工程下载下来的时候,会遇到各种问题,目前可以使用4种工具下载代码,可以使用两种不同的方式。
内容:
1、使用 Git Gui 下载代码
在官网下载 TortoiseGit 和 Git GUI for windows ,下载完成之后,进行安装。

图一
- 在设定为 git 的目录中右键,打开 Git GUI 软件

图二

图三
使用账号打开GitHub,同时打开自己的工程,在Clone or download 下拉之后,选择 use SSH,拷贝 输入框中的内容到 Git GUI 界面中。

图四
此时点击 Clone,会提示如下内容:

此时应该是SSH-key没有生成,需要到 GitHub 上,打开settings ---> SSH and GPG keys ---> 点击右侧的 generating SSH keys,查看官方的介绍,如何生成SSH key。
大致步骤如下:
(1) 首先检查服务器上否已经安装了 SSH key。
- 打开 Git Bash

- 执行 ls -al ~/.ssh 命令,如下图

可以看到以下列出了含有 SSH key的地方。当列表里面没有数据的时候,此时需要 生成一个新的 SSH key,并添加到 ssh-agent (见操作4) 和 Git Hub(见操作3)中。
(2) 生成新的 SSH key
- 打开 Git bash 工具
- 执行 ssh-keygen -t rsa -b 4096 -C "your email@example.com"

(3) 将 SSH key添加到 GitHub上
- 直接打开 id_rsa.pub文件;
- 将其中的内容拷贝到 GitHub上 (setting----> SSH and GPG keys )选择 New SSH key。
(4) 将 SSH key 添加到 ssh-agent上。
如果安装了 GitHub Desktop,可以直接使用这个工具下载代码,不需要 SSH key。
确保 ssh-agent正在运行的方法:
- 如果使用了GitHub desktop 提供的 Git shell,那么 ssh-agent肯定是在运行的;
- 如果使用 Git for windows 这种类似的中断,可以使用命令 开启 ssh-agent

- 将之前生成的 SSH Key 添加到 ssh-agent

(5)完成以上操作之后,重新打开 Git GUI(按照)图一 ----- 图四 进行操作
下载过程中可能会要求输入 (2) 步骤中设定的密码。
但是即使按照以上的步骤,仍然会出现以下问题,此时可能的问题是 若服务器是公司的,可能是被公司限制出了,此时需要使用 Git Bash工具进行操作。

2、使用 Git Bash 下载代码
(1) 打开Git Bash 工具

(2) 使用SSH 下载代码
- 输入命令 ssh -v git@github.com 查看 SSH key 情况

在图中可以看到说是加载不到对应的 key 所属的文件,一般情况下,我们下一步做法可能是 重新生成 Key,但是即使重新生成了Key,也会发现还会有以上的问题。

(3) 使用 https 下载代码
- git clone https://......(git地址)

但是 发现 rsult =18的错误。 查询相关日志,执行了一下命令
- git config --global http.postBuffer xxxxxx (将接受代码的缓存扩大)

- 再次执行 git clone https://......(git地址)

发现又有 result = 56,由于我自己使用的是公司的电脑进行操作的,怀疑可能是公司对下载的代码量有限制。因此 将 下载代码的地址更换成了另一个工程(代码量非常小),发现下载成功了。

Git 学习笔记之(一) 使用 git gui 从github上下载代码的更多相关文章
- Git学习笔记(一)Git初识及基本操作
详细完整教程:官方文档,廖神Git教程,武sir 一.什么是Git? 定义:Git是分布式版本控制系统. 1.1什么是版本控制 我们可以回想以下,在我们上学毕业要写论文或是准备一份演讲稿的时候,都会用 ...
- Git学习笔记(2)-Eclipse中Git插件使用
目前我使用的Eclipse luna版本中已经集成了git插件,这里就不介绍如何安装Git插件了,不懂可以看其他的博客. 上篇笔记介绍了Git的基本指令,实际开发中我基本都使用eclipse插件进行代 ...
- Git学习笔记(三)远程库(GitHub)协同开发,fork和忽略特殊文件
远程库 远程库,通俗的讲就是不再本地的git仓库!他的工作方式和我们本地的一样,但是要使用他就需要先建立连接! 远程库有两种,一个是自己搭建的git服务器:另一种就是使用GitHub,这个网站就是提供 ...
- git学习笔记(一)—— git环境搭建
一.简介 Git是目前世界上最先进的分布式版本控制系统(没有之一). 首先,分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库 ...
- Git学习笔记(四)
一.忽略特殊文件 在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件. 不需要从头写.gitignore文件,GitHub已经为我们 ...
- Git学习笔记与IntelliJ IDEA整合
Git学习笔记与IntelliJ IDEA整合 一.Git学习笔记(基于Github) 1.安装和配置Git 下载地址:http://git-scm.com/downloads Git简要使用说明:h ...
- Git学习笔记(10)——搭建Git服务器
本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己 ...
- git 学习笔记6--remote & log
git 学习笔记6--remote & log 创建SSH Keys ssh-keygen -t rsa -C "1050244110@qq.com" 本地关联远程 git ...
- Git学习笔记---协作的一般流程
一般的操作流程 1.pull 王小坤与另一个同事张大炮一起开发一个项目,张大炮昨天修改了数据库读写的api,优化了执行速度,并把read()函数改名成了Read(),下午下班之前把这些代码push到服 ...
随机推荐
- vue随笔
1.vue基础 Vue 是一个mvvm 的渐进式框架.Angular 是一个mvc的.所以vue的重点更偏向于mv 他的使用方式 大家会发现里面带有大量的$的属性. 学习vue的指令 V-for 用 ...
- CentOS下安装配置MySQL8.0的步骤详解
下载yum源的安装包 yum localinstall https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm 安装 yu ...
- 不懂数据库索引的底层原理?那是因为你心里没点b树
本文在个人技术博客不同步发布,详情可用力戳 亦可扫描屏幕右侧二维码关注个人公众号,公众号内有个人联系方式,等你来撩... 前几天下班回到家后正在处理一个白天没解决的bug,厕所突然传来对象的声音: ...
- 深入理解Java内存模型JMM与volatile关键字
深入理解Java内存模型JMM与volatile关键字 多核并发缓存架构 Java内存模型 Java线程内存模型跟CPU缓存模型类似,是基于CPU缓存模型来建立的,Java线程内存模型是标准化的,屏蔽 ...
- 记2017青岛ICPC
2017青岛ICPC 11月4日 早上很早到达了青岛,然后去报道,走了好久的校园,穿的很少冷得瑟瑟发抖.中午教练请吃大餐,吃完饭就去热身赛了. 开幕式的时候,教练作为教练代表讲话,感觉周围的队伍看过来 ...
- easyui close的最大化的dialog 切换 tab 再次出现
今天发现一个神奇的bug,easyui中的dialog在经历了d.panel('close');之后,当前的tab仍然未关闭,切换了另一tab,然后回去刚才的tab,发现已经close的dialog又 ...
- Minimum Spanning Tree
前言 说到最小生成树(Minimum Spanning Tree),首先要对以下的图论概念有所了解. 图 图(Graph)是表示物件与物件之间的关系的数学对象,是图论的基本研究对象.图的定义方式有两种 ...
- 洛谷P1396 营救 题解
题目:https://www.luogu.org/problemnew/show/P1396 分析: 这其实一看就是一个最短路的近似模板的题目,但我们要注意到两个区之间可能会有多条道路,所以说我们只需 ...
- 【MySQL】(六)锁
开发多用户.数据库驱动的应用时,最大的一个难点是:一方面要最大程度地利用数据库的并发访问,另一方面还要确保每个用户能以一致的方式读取和修改数据.为此就有了锁(locking)的机制,同时这也是数据库系 ...
- 【Java中级】(一)面向对象的特性与八种基本类型
1.1.Java 基本数据类型: Java提供了8种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型. byte.short.int.long.float.double. ...