本期Git教程将会带您进入Git的世界,这是您使用分布版本控制工具Git的开端,祝您学习顺利!

步骤一  在Linux系统中下载Git

如果是Ubuntu系统,在shell中输入指令

sudo apt-get install git

步骤二  在代码托管网站GitHub网站上注册帐号

GitHub是为数不多没有被墙的国外技术网站之一,码农之友。

如果要进一步学习Git与远程版本库之间的操作,这一步是必须做的。当然,如果有GitLab帐号也是同样的道理。

具体怎么注册,我想搞技术的你应该没有问题。由于是纯英文的教程,真的不明白,可以问问度娘。

跟着教程创建属于你自己的版本库,到这里你就迈出了Git之旅的第一步。喝彩!

步骤三 设置Git全局配置

设置Git的全局配置信息

git config --global user.name "your account name"      设置用户名

git config --global user.email "your email address"       设置邮箱地址

这两条设置很重要,有多重要呢?在Git提交时,这两条配置设置的用户名、邮箱地址都会被纳入到提交信息中,作为历史记录被保存下来。

如果您参照我写的,也使用了--global,那么系统默认会在用户主目录下自动生成一个隐藏文件.gitconfig 。

由于此时我们还在用户主目录(即默认打开的路径),可以使用如下指令查看文件内容

cat .gitconfig

现在,文件里面会写着

[user]

  name  = "your account name"

  email = "your email address"

当然,您也可以使用指令查看简单配置文件简单信息

git config --list

结果会显示

name="your account name"

email="your email address"

其实,这个配置文件不仅仅能设置用户名、邮箱地址,还能设置编辑器、差异分析工具、彩色输出等。

git config --global color.ui  true            彩色Git输出

git config --global core.editor emacs       编辑器使用emacs,如果不写默认为vi或vim

git config --global merge.tool vimdiff     解决合并冲突时使用的差异分析工具

细写过于麻烦,截个图自个儿看呗

步骤四  生成SSH连接密钥

本教程不使用HTTPS(HTTP Security)协议,而是使用更为安全的SSH(Security Shell)协议与GitHub之间建立私密连接通道。

在你想要保存 .ssh 密钥文件(隐藏文件)的目录下打开shell,并输入指令

ssh-keygen -t rsa -C "your email address"(替换成自己的邮箱)   注意:ssh-keygen连在一起写,keygen意思是自动生成key

于是,在相应的目录下便生成了相应的密钥文件。如果您不信,可以在当前的shell下输入指令,保准您能得到满意的结果。

ls -al | grep .ssh

现在,我们一起从当前目录进入 .ssh 密钥文件内部,一窥究竟。

ls -al .ssh

不出所料,应该会出现id_rsa和id_rsa.pub两个文件,分别保存RSA算法生成的私钥、公钥。

步骤五  复制id_rsa.pub文件中密钥到GitHub相应位置

将密钥复制到GitHub相应位置。相信你稍微找找就能找到,顺便当作熟悉GitHub的小练习。

步骤六  复制GitHub中SSH私密连接地址,克隆GitHub上的版本库

git clone git@github.com:****/repository_name.git(具体的SSH连接地址)

指令执行完毕之后,本地.ssh文件夹新增known_hosts文件,内部填入的远程仓库所在主机信息。

Git学习笔记day01 从GitHub克隆版本库的更多相关文章

  1. git学习笔记(二)—— 创建版本库&&版本管理

    一.创建版本库 创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录: mkdir gitHub_CXWcd gitHub_CXW git init Initialized empty G ...

  2. Git学习笔记——一个NB的分布式版本控制系统

    1. 命令: git init           创建新仓库 (在一个空文件下然后执行命令) git clone  + 路径      检出仓库,从本地或从服务器上 git status     查 ...

  3. Git学习笔记 2,GitHub常用命令

    廖雪峰Git教程 莫烦Git教程 莫烦Git视频教程 文件三个状态,add之后从工作区(原始状态)到暂存区,commit之后从暂存区到版本库 工作区 暂存区 版本库 unstage stage mas ...

  4. Git学习笔记 1,GitHub常用命令1

    廖雪峰Git教程 莫烦Git教程 莫烦Git视频教程 --------------- init > apt-get install git # 安装 > mkdir /home/yzn_g ...

  5. git 学习笔记 —— 切换和恢复提交版本( git reset/reflog/tag 命令)

    记录一下关于 git 不同提交版本间切换的操作以及如何恢复至切换之前的版本. 切换到之前提交的版本 —— git reset --hard 笔者在使用 git 时,首先接触到了一个"黑魔法& ...

  6. GIt学习之路 第二天 创建版本库

    本文参考廖雪峰老师的博客进行总结,完整学习请转廖雪峰博客 创建版本库 阅读: 1859216 什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文 ...

  7. GIT入门笔记(6)- 向版本库添加文本文件

    1.把文本文件添加到版本库? 所有的版本控制系统,其实只能跟踪文本文件的改动,比如TXT文件,网页,所有的程序代码等等,Git也不例外. 版本控制系统可以告诉你每次的改动,比如在第5行加了一个单词&q ...

  8. GIT入门笔记(5)- 创建版本库

    版本库又名仓库,英文名repository,可以简单理解成一个目录, 这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻 ...

  9. GIt学习第一天之安装和版本库创建

    搬运自 ‘廖雪峰的官方网站’ 1.git安装 官网下载地址:https://git-scm.com/download/win   百度网盘下载地址:https://pan.baidu.com/s/1k ...

随机推荐

  1. shell控制流程

    #!/bin/bash #存储为a.sh == ] then #参数正确,返回0 else #参数错误,返回1 fi #!/bin/bash #存储为b.sh echo $? $ . ./a.sh $ ...

  2. [转]Groovy Goodness

    http://mrhaki.blogspot.com/2014/12/gradle-goodness-continue-build-even.html 介绍了不少使用Groovy编写脚本的好例子,可以 ...

  3. Codeforces - 151C 质因子分解

    显然只需要能跑到第二个因子就赢了 需要特判非平凡因子 常数优化:不用求出所有因子,跑完第二个素数就行了 #include<bits/stdc++.h> using namespace st ...

  4. (转)Mat, vector<point2f>,Iplimage等等常见类型转换

    在mfc c++ 以及opencv 编写程序当中,很多常用的类型转换,现在总结一下.(注意加相应的头文件,这里不罗嗦) 提纲: 1. Mat ---> Iplimage 2. Iplimage  ...

  5. JavaScript base64多图上传

    <div> <form action="/home/Uplod" method="post" enctype="multipart/ ...

  6. 12-----BBS论坛

    BBS论坛(十二) 12.1.图形验证码生成 (1)utils/captcha/init.py import random import string # Image:一个画布 # ImageDraw ...

  7. Invalid prop: type check failed for prop "XXX". Expected String, got Object.

    项目是Vue的,基于elementUI的后台管理系统. Invalid prop: type check failed for prop "total". Expected Str ...

  8. @Value("#{}")与@Value("${}")的区别

    原文:https://blog.csdn.net/u012925172/article/details/84926064 @Value("#{}")   SpEL表达式@Value ...

  9. JAVA HTTP请求和HTTPS请求

    HTTP与HTTPS区别:http://blog.csdn.net/lyhjava/article/details/51860215 URL发送 HTTP.HTTPS:http://blog.csdn ...

  10. Linux下判断磁盘是SSD还是HDD的几种方法

    环境介绍 Fedora release 25 (Twenty Five) 判断方法 方法一 判断cat /sys/block/*/queue/rotational的返回值(其中*为你的硬盘设备名称,例 ...