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到服 ...
随机推荐
- 【JDK基础】java基础的一些资料
工具:https://blog.csdn.net/javazejian/article/details/72828483 类加载器:https://blog.csdn.net/X5fnncxzq4/a ...
- mariadb10.1.17安装
一.源码编译安装gcc-5.1.0 1.下载gcc源码包 Download (HTTP): http://ftpmirror.gnu.org/gcc/gcc-5.2.0/gcc-5.2.0.tar.b ...
- Java并发之Semaphore和Exchanger工具类简单介绍
一.Semaphore介绍 Semaphore意思为信号量,是用来控制同时访问特定资源的线程数数量.它的本质上其实也是一个共享锁.Semaphore可以用于做流量控制,特别是公用资源有限的应用场景.例 ...
- 从零到一,利用kubeadm在ubuntu server 16.04 64位系统离线安装kubernetes v1.10.0
说明 初步接触kubernets,记录学习过程 本教程目的利用kubeadm在ubuntu server 16.04 64位系统离线安装kubernets v1.10.0 环境信息 节点IP地址 角色 ...
- JavaScript 词法作用域不完全指北
在 JavaScript 作用域不完全指北 中,我们介绍了作用域的概念以及 JavaScript 引擎.编译器和作用域的关系.作用域有两种主要的工作模型:词法作用域和动态作用域.其中最为普遍的也是大多 ...
- HDU 3338:Kakuro Extension(脑洞大开的网络流)
http://acm.hdu.edu.cn/showproblem.php?pid=3338 题意:在一个n*m的地图里面,有黑方块和白方块,黑方块可能是“XXXXXXX”或者“YYY/YYY”,这里 ...
- js查询checkbox已选择的值
$("input[id^=ck]").each(function(index,e){ if($(e).is(":checked")) { userArray.p ...
- 基于C#的机器学习--旅行推销员问题
我们有一个必须在n个城市之间旅行的推销员.他不在乎什么顺序.他最先或最后访问的城市除外.他唯一关心的是他会去拜访每一个人,每个城市只有一次,最后一站是他得家. 每个城市都是一个节点,每个节点通过一条边 ...
- Oracle数据库常用的脚本命令(一)
--连接数据库的命令connect,用于切换连接用户,简写形式conn--语法格式:conn 用户名/密码conn yanln/yanln --显示当前登录的用户show user --执行操作系统的 ...
- MyBatis从入门到精通:各个实体类
SysUser类: package tk.mybatis.simple.model; import java.util.Date; public class SysUser { public Long ...