写给小白看的Git的安装配置与使用

1. 安装(Windows)

1.1 首先需要下载 git 的安装包

1.2 下载完成之后双击安装包进行安装,安装比较简单,一路 next 就行

1.3 安装完成之后我们鼠标右击和开始菜单中都可以找到 git

鼠标右击
开始菜单

注:Git Bash 打开为 Linux 的命令行(使用Linux的命令),Git CMD 使用的是 windows 下的 CMD命令,Git GUI是Git提供的一个界面化的操作面板,按照自己喜好方式选择,个人建议 Git Bash,但是 git 命令是统一的无需纠结。

1.4 测试安装

打开Git Bash 输入一下命令

git --version

如果返回 git 版本信息表明安装成功

返回信息  git version 2.19.0.windows.1

1.5 想在全局使用 git 命令的话我们需要配置一下环境变量,否则直接打开CMD或者有些IDE中直接在终端输入 git 会报找不到命令的错误

image-20200510115823632

1.5.1 右击此电脑--属性--高级系统设置--环境变量

1.5.2 在系统变量找到PATH,编辑--新建

1.5.3 将你的 git 的安装目录(到bin)输入(复制)进去点击确定

例如我的:E:\Program Files (x86)\Git\bin

1.5.4 重新运行CMD即可正常使用 git 相关的命令

image-20200510120418194

2. 注册GitHub/Gitee

GitHub官网

Gitee官网

关于如何注册就不做过多解释了,两个网站都是类似的,GitHub 国内访问会比较慢,说一下注册完成时候的配置

说明:

如果仅使用GitHub或者仅使用Gitee的话,直接查看对应的配置

如果你两个同时使用,配置多个SSH key请先查看 2.3 多SSH key 配置,然后再依次查看GitHub和Gitee的配置

2.1 GitHub配置

注册完成时候进入我们管理界面,点击头像--setting

image

点击 SSH and GPG keys

image

在电脑中打开CMD 输入下面的命令,xxxxx@xxxxx.com是你注册GitHub的邮箱

ssh-keygen -t rsa -C "xxxxx@xxxxx.com"

敲三次回车即可生成 ssh key

打开资源管理器,C盘--用户(Users)--你的登录用户,打开.ssh文件夹

image
image

打开.pub结尾的那个文件,全选复制里面的公钥,回到浏览器的中 GitHub 刚才的设置界面,点击 NEW SSH key

image

按照要求输入信息,之后点击添加

image

添加成功后的样子

image

打开 Git Bash 中设置用户名和邮箱(Github注册的邮箱)

git config --global user.name "个人用户名"
git config --global user.email 你的邮箱地址不用引号

设置从之后可以使用下面命令查看刚才设置的信息

git config user.name
git config user.email

至此,配置完成

2.2 Gitee 码云配置

注册成功之后登陆,点解用户头像--设置

image

点击 SSH 公钥

image

在电脑中打开CMD 输入下面的命令,xxxxx@xxxxx.com是你注册Gitee的邮箱

ssh-keygen -t rsa -C "xxxxx@xxxxx.com"

敲三次回车即可生成 ssh key

打开资源管理器,C盘--用户(Users)--你的登录用户,打开.ssh文件夹

image
image

打开.pub结尾的那个文件,全选复制里面的公钥,回到浏览器的中 Gitee刚才的设置界面,输入信息,点击确定

image

添加成是这样滴

image

打开 Git Bash 中设置用户名和邮箱(Gitee注册的邮箱)

git config --global user.name "个人用户名"
git config --global user.email 你的邮箱地址不用引号

设置从之后可以使用下面命令查看刚才设置的信息

git config user.name
git config user.email

至此,配置完成

2.3 多SSH key 配置

我们为Github和Gitee分别设置ssh key,生成对应的ssh key之后,注意在查看上面两个配置的时候不需要再次生成,只需要复制对应的.pub中的公钥即可

打开 CMD

先生成Github用的 ssh key,输入以下命令(xxxxx@qq.com为你注册 Github 的邮箱)

ssh-keygen -t rsa -C 'xxxxx@qq.com' -f ~/.ssh/github_id_rsa

再生成Gitee的 ssh key,输入以下命令(xxxxx@company.com

ssh-keygen -t rsa -C 'xxxxx@company.com' -f ~/.ssh/gitee_id_rsa

生成的公钥会保存到 C盘--用户(Users)--你的用户名--.ssh文件夹内

打开此文件夹,新建一个config文件,填写下面的内容

# gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_id_rsa
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa

注:IdentityFile 为指定使用私钥的文件,如果没有按照刚才的生成命令命名的话,更改为你.ssh文件夹下对应私钥文件的名称即可(私钥是没有后缀名的文件,公钥是 .pub 后缀的文件,Github和Gitee中复制的是公钥 注意区分)

打开 Git Bash,输入下面命令测试

ssh -T git@gitee.com
ssh -T git@github.com

能够成功返回响应证明配置成功

image

3. 使用

Github 与 Gitee 在使用上几乎是完全一样的,在国内的区别可能就是在速度上,如果在意速度的话,最好还是选择 Gitee,分别两个网站演示不同的使用方式

我们会面临两种情况:

  • GitHub/Gitee上面没有仓库,我们本地的项目需要放到Github/Gitee上管理
  • GIthub/Gitee上面的仓库,我们需要克隆到本地

3.1 情况一:本地初始化项目

3.11 将本地项目交给 git 管理

在这种情况下,一般都是我们个人的项目,我们在本地创建了项目,想借助Github和Gitee进行代码备份。

我们使用一个项目名为:gitdemo的项目进行演示,现在里面仅有一个index.html 文件,代码如下:

image
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Git Demo</title>
</head>
<body>
    <h1>Hello Git</h1>
</body>
</html>

我们打开Git Bash,切换到我们项目目录下,或者在gitdemo目录下右击--Git Bash

执行下面命令,对项目进行初始化,将项目交给 git 进行管理

git init

执行完成时候,我们的项目中会多出一个 .git 的文件夹

这是一个隐藏的项目,如果没有多出,请点击资源管理器中的 查看--隐藏项目

image

此时我们的项目已经交给本地的 git 进行管理,但是我们在GitHub和Gitee中并没有对应的代码仓库,我们需要到连个网站上面创建新的仓库,用来存放项目代码

3.1.2 新建仓库

GitHub在个人管理面板,左上角位置点击 NEW

image

填写仓库的信息,仓库选择为私有的话后面我们克隆的时候可能要求输入用户名和密码

image

创建仓库完成,此时我们本地 git 管理的项目并没有和Github中的仓库建立联系,复制你仓库的 HTTPS 链接,在Git Bash中执行下面的命令,将origin 后面的链接换为你项目的链接

image
git remote add origin https://github.com/用户名/gitdemo.git

3.1.3 第一次提交

我们先查看下我们项目的状态,执行下面命令

git status
image

这种情况说明 index.html 还没有添加到 git 的暂存区,我们执行下面的命令,将项目中所有文件都添加到暂存区(虽然我们只有一个文件)

git add .

然后我们再次查看状态

image

所有的文件都已经提交到暂存区了,将我们暂存区的代码提交到本地 git 仓库中,执行下面的命令,m后面使我们的提交信息

 git commit -m "第一次提交"

此时代码就已经提交到我们的 git 的本地仓库中,我们将本地代码提交到 GitHub的仓库中去,执行下面的命令

git push -u origin master

push为提交命令,因为我们首次提交,Github仓库中并没有master分支,因此我们需要创建master分支

image

可能会要求你输入你的Github的用户名和密码,输入即可我们可以在Github仓库中查看我们提交的情况

image

3.1.4 拉取最新的项目

在实际开发过程中不可能使我们自己一个人提交代码,因此我们演示一下如何获取远程仓库最新的代码。

我们在刚才一直没有创建 README.md 文件,我们在 GitHub中创建此文件来模仿远程仓库被他人修改

image

点击 添加按钮

image

输入内容,点击添加按钮

image

这样就在远程仓库中添加README.md文件,此时我们本地是没有这个文件的,我们使用下面的命令来获取最新的代码

git pull
image

成功获取到最新的代码,此时本地就多了README.md文件

3.1.5 创建分支

在实际开发过程中,我们不会直接对master分支直接进行开发,一般情况下都对在本地创建一个新的分支,用此分支进行开发,开发完成之后再合并到master分支上进行

我们假设增加一个登陆页面 login.html

首先创建login分支

git branch login

然后查看本地分支情况

git branch
image

已经成功创建出login分支,但是我们还是处于master分支上面

切换到login分支

git checkout login

再次查看分支情况时,可以看到已经处于 login分支上面了

image

我们在项目中新建一个login.html文件,然后执行下面命令

# 添加到暂存区
git add .
# 提交到本地git仓库
git commit -m "增加了登录界面"
# 查看状态
git status

注意此时在master分支中并没有login.html页面,因为我们是在login分支中添加的,我们将分支切换到master分支后就会发现login.html页面没有了,我们使用下面命令进行合并分支

# 切换到master
git checkout master
# 合并分支
git merge login

此时们再次查看项目就,login.html页面就出来了,我们将master分支提交到远程仓库,此时login.html已经在本地仓库中,不需要再次添加

# 查看状态
git status
# 提交到远程仓库
git push

此时我们可以到Github中查看

image

点击branch查看分支可以发现,远程仓库中并没有login分支

image

将login分支推送到远程仓库中

# 切换到login分支
git checkout login
# 推送 远程仓库没有login分支 因此我们要创建分支
git push -u origin login
image

推送成功

3.2 情况二:克隆已经存在的项目

本次使用Gitee演示,我们直接在Gitee中导入了GitHub中的仓库,创建仓库的方式和GitHub一模一样,只是界面换为了中文,不在进行介绍

image

在本地创建存放项目的文件夹,在文件夹内打开Git Bash,在上面界面中点击 克隆/下载 按钮,复制项目的https链接

# 克隆项目
git clone git clone https://gitee.com/你的用户名/gitdemo.git
image

项目已经成功的被克隆下来,其他操作与上文一致,不再介绍

回顾

  • 安装Git后需要配置用户名和邮箱
  • 首次使用Github/Gitee或者在新机器上面使用时需要生成 SSH key
  • 对于GitHub和Gitee同时使用的我们可以通过配置实现
  • 一般情况使用git分为两种方式
    • 本地项目上传到远程仓库
    • 克隆远程仓库
  • 使用Git管理开发的一般过程为:
    • 创建新的分支
    • 在新分支上进行开发新功能
    • 开发完成合并到主分支
    • 提交主分支和新分支到远程仓库
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,012评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,628评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,653评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,485评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,574评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,590评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,596评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,340评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,794评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,102评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,276评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,940评论 5 339
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,583评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,201评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,441评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,173评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,136评论 2 352

推荐阅读更多精彩内容