0
点赞
收藏
分享

微信扫一扫

GIT使用

颜路在路上 2022-03-11 阅读 60
# GIT 和 GITHUB

- 在学习之前我们要先要清楚几个东西
- `git``github` 是两个东西,不是一个东西
- 就像 `java``javascript` 一样,是两个东西
- 需要搞清楚几个词语的意思
  - 本地:我自己的终端
  - 远程:在网络那一头的终端
  - 仓库:一个被 `git` 管理了的文件夹



## 什么是 GIT

- `git` 官方名称: **分布式版本管理器**
- 私人解释: 就是一个管理我们文件夹的工具
  - 只不过可以保留所有的版本信息
- 就是我们安装一个软件
  - 然后用这个软件来管理我们的一个文件夹
  - 这个文件夹被 `git` 管理以后,我们可以对他进行各种操作
  - 保证我们写过的内容不会丢失



## 什么是 GITHUB

- `github` 是一个网站,是一个我们托管项目的平台
- 是一个 **世界级别** 的大型网站
- 也就是说,我们写的项目的 **源码** 可以放在上面保存,只要我们不自己删除,不会丢失
  - 就相当于百度云
  - 只不过功能更加强大,上面都是开发人员(世界级别)
- 因为 `github` 只接受 `git` 来上传代码,所以叫做 `github`
- 也就是说,我们可以通过 `git` 这个软件来管理我们本地的文件夹
  - 并且可以把文件夹里面的代码上传到 `github` 保存
  - 也可以写一个插件之类的工具,上传到 `github` 上面让其他开发者使用
  - 也可以从 `github` 上找到其他开发者写的插件之类的东西下载使用
- 所以说,`github` 也是一个大型的 **开源** 的资源共享平台



## GIT 使用

- 刚才我们说过,`git` 是一个管理我们文件夹的工具
- 那么我们就要先安装工具,再使用工具管理我们的文件夹



### GIT 安装

- 下载 `git` 直接到官网下载就可以

  - [git官网](https://git-scm.com/)
  - [git下载中心](https://git-scm.com/downloads)

- 找到和操作系统对应的版本就可以了

  1. 方法一: 打开官网,直接点击下载

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-57jxUtgj-1646293206544)(C:\Users\Administrator\Desktop\lesson\二阶段\JavaScript课程\day33\images\官网下载.png)]

  2. 方法二: 打开下载中心,选择操作系统,选择下载版本

     [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HKw5q5D3-1646293206546)(C:\Users\Administrator\Desktop\lesson\二阶段\JavaScript课程\day33\images\下载中心1.png)]

     [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tz7UvDjJ-1646293206547)(C:\Users\Administrator\Desktop\lesson\二阶段\JavaScript课程\day33\images\下载中心2.png)]

- 下载好以后,直接双击进行安装就行

- 一直下一步就可以,安装再默认路径就行

- 安装完毕后检测一下安装是否成功

  1. 方法一: 打开 `cmd` 窗口,输入指令检查

     ```shell
     # 检测 git 是否安装
     $ git --version
     ```

     - 出现版本号,说明安装成功

       [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zqVTWdPf-1646293206548)(C:\Users\Administrator\Desktop\lesson\二阶段\JavaScript课程\day33\images\git安装检测1.png)]

  2. 方法二: 随便找个地方单机 **鼠标右键**,出现下图内容,说明安装成功

   [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-W3m1D0RH-1646293206549)(C:\Users\Administrator\Desktop\lesson\二阶段\JavaScript课程\day33\images\右键.png)]

- 安装完毕,接下来我们就可以开始使用了



### GIT 使用

- `git` 是一个软件没错,但是不是那种安装了会再桌面出现一个图标的软件

- 而是一个需要在 **命令行** 进行操作的软件

- 我们单机鼠标右键,点击 `Git Bash Here`

- 会出现下图内容

 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zpnv2uym-1646293206550)(C:\Users\Administrator\Desktop\lesson\二阶段\JavaScript课程\day33\images\git窗口1.png)]

- 我们发现点开以后,就是一个 **命令行窗口**

- 其实就是给我们写一些指令使用的,只不过色彩鲜艳一点

  - 使用 `cmd` 或者 `powershell` 窗口来运行 `git` 指令也可以
  - 只要是再终端运行就行
  - OS 操作系统直接在 **终端** 中运行就行

- `Git Bash Here` 表示在当前目录下运行 `Git Base`

- 所以,你在哪个文件夹下点击的,那么你出来的命令行窗口的目录就是哪里

- 我们就在命令行里面使用 `git` 来管理我们的文件夹



#### GIT 初始化

- 我们希望一个文件夹被 `git` 管理的话,那么就要在一个文件夹下进行 **git 初始化**

- 找到一个希望被 `git` 管理的文件夹

- 在文件夹内单击鼠标右键,点开 `Git Bash Here`

- 输入指令

  ```shell
  # git 初始化的指令
  $ git init
  • 然后文件夹内会多一个 .git 的文件夹(这个文件夹是一个隐藏文件夹)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RGdW3BY9-1646293206551)(C:\Users\Administrator\Desktop\lesson\二阶段\JavaScript课程\day33\images\git-init.png)]

  • 这个时候,我的这个 git_demo 文件夹就被 git 管理了

    • git 不光管理这一个文件夹,包括所有的子文件夹和子文件都会被管理
  • 注意: 只有当一个文件夹被 git 管理以后,我们才可以使用 git 的功能去做版本管理

    • 也就是说,我们必须要把我们电脑中的某一个文件夹授权给 git
    • git 才能对这个文件夹里面的内容进行各种操作
    • git init 就是在进行这个授权的操作

GIT 暂存区

  • 当一个文件夹被 git 管理了以后

  • git 就会对当前文件夹进行 “分区”

  • 会分为三个区域

    1. 工作区:我们书写的源码就在工作区里面
    2. 暂存区:把我们想要存储的内容放在暂存区
    3. 历史区:把暂存区里面的内容拿出来形成一个历史版本
  • 也就是说,我们需要把想成为一个版本的代码

    • 要先放在暂存区
    • 然后才能在暂存区里面放到历史去
    • 才可以生成一个版本保存下来
  • 我们要放入暂存区,要使用 git add 指令

  • 把单独一个文件放在暂存区

    #配置用户名和邮箱地址
    git config --global user.name "用户名"
    git config --global user.email "邮箱地址"
    
    # 把文件夹下的 index.txt 文本放在暂存区
    $ git add index.txt
    
  • 把单独一个文件夹放在暂存区(暂存区不能存放空文件夹)

    # 把文件夹下的 ceshi文件夹 放在暂存区
    $ git add ceshi
    
    $ git status  查看文件状态  红色表示没有添加
    
  • 把所有文件都放在暂存区

    # 把文件夹下所有的内容都放在暂存区
    $ git add --all
    
    # git add --all 有一个简单的写法
    $ git add .
    
    • 全部存放的时候使用上面两个指令哪个都行
  • 把已经放在暂存区的内容在拉回到工作区

    # 拉回暂存区的 index.txt 文件
    $ git reset HEAD -- index.txt
    
    # 拉回暂存区的 ceshi 文件夹
    $ git reset HEAD -- ceshi
    
    # 拉回暂存区的 所有文件
    $ git reset HEAD -- .
    
    • 注意: -- 两边都有空格,拉回所有文件的时候有个 .
  • 暂存区,只是帮我们暂时存放内容,我们删除了还是会丢的

  • 要想帮我们保存下来,那么还需要把暂存区的内容放到历史区

GIT 历史区

  • git 的历史区,就是把我们暂存区里面的文件变成一个历史版本

  • 当一些文件形成一个版本的时候,就会被一直记录下来了

  • 向历史区里面添加内容的时候,必须保证 暂存区 有内容

  • 因为历史区就是把暂存区里面的内容收录进去

  • 向历史区添加内容使用 git commit -m "做一个简单的说明"

    # 把暂存区的内容放到历史区
    $ git commit -m "我是第一个版本"
    
    • 我们一定要写一个简单的说明
    • 因为当我们的历史版本多了以后,我们自己也记不住哪个版本做了哪些修改
    • 所以有个简单的说明会好很多
  • 这个时候历史区就有了我们的第一个版本

  • 我们使用 git log 这个指令查看版本信息

    # 查看当前历史区版本信息
    $ git log
    

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-czKiffyS-1646293206552)(C:\Users\Administrator\Desktop\lesson\二阶段\JavaScript课程\day33\images\git版本信息.png)]

  • commit:这一个版本的版本编号

  • Author:作者

  • Date:本次版本的记录时间

  • 后面的内容就是我刚才提交的时候写的说明

  • 接下来我们对文件夹内的内容进行一些修改,然后再次创建一个历史版本

  • index.txt 中的文本内容进行修改

    • hello world 改变成 你好 世界
  • 然后我们再次打印日志看一下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VuEjQPuJ-1646293206552)(C:\Users\Administrator\Desktop\lesson\二阶段\JavaScript课程\day33\images\git版本信息2.png)]

  • 我们发现,日志信息变成了两条,也就是我们存在着两个版本的内容了

  • 放在历史区的内容,理论上就丢不了了

  • 现在我们可以把我们本地工作区中的内容给删除了,删除以后我们进行历史回退

  • 我们使用 git reset --hard 版本编号 进行历史回退

    # 回退到第一次提交的版本
    $ git reset --hard ce0c17f7a703c6847552c7aaab6becea6f0197f2
    
    # 回退到第二次提交的版本
    $ git reset --hard abb2c4f12566440e04bc166c3285f855a37a3bb2
    
  • 这个时候我们就可以来回来去的玩我们的历史记录了

GIT 推送

  • 我们的所有内容已经全部保留在了本地历史区
  • 理论上是不会丢失了
    • 但是如果把文件夹删除了,还是没有了
  • 所以我们要使用 git 把我们所有的内容推送到 github 或者 码云上面保存起来
  • 那么就本地文件夹就算删除了,那么远程上面还有一份,还可以拿回来使用
  • 所以我们现在就要把本地内容推送到远程
  • 这个时候我们接需要一个 码云 的账号了
  • 先去 码云官网 注册一个账号
开辟一个远程仓库
  • 有了 码云 账号以后

  • 我们就登录 码云 网站,开辟一个远程仓库

  • 码云 的远程也是以一个仓库一个仓库的形式来保存代码

    • 我们可以在一个 码云 上保存很多的项目
    • 只要一个项目一个仓库就可以了
  • 按照下面步骤开辟仓库

    1. 先点击新建仓库

    2. 按照要求填写内容

    3. 出现下图表示创建仓库成功

  • 现在我们的远程仓库建立完毕了,我们就要把我们的项目代码整个上传了

添加仓库地址
  • 接下来,要使用 git 上传代码了

  • 我们先要告诉 git 上传到哪里

  • 也就是给 git 添加一个上传的地址

  • 我们还是来到我们的项目文件夹

  • 使用 git remote add origin 仓库地址 来添加

    # 在项目文件夹下打开 git base
    # 添加仓库地址
    $ git remote add origin https://地址
    
    • remote:远程的意思
    • add:添加的意思
    • origin:是一个变量名(就是指代后面一长串的地址)
上传
  • 上传到哪里的地址我们已经添加好了

  • 接下来就是上传内容了

    • 上传要保证 历史区 里面有内容
    • 上传的过程会把 历史区 里面所有的内容上传到远端
  • 我们使用 git push 指令来上传

    # 上传内容
    $ git push -u origin master
    # 表示把内容上传到 origin 这个地址
    # master 是上传到远程的 master 分支
    
    • -u 是我们第一次的使用用到了,是为了记录一下用户名和密码
    • [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q9Jt7y0f-1646293206553)(C:\Users\Administrator\Desktop\lesson\二阶段\JavaScript课程\day33\images\搜狗截图20211019160356.png)]
    • 下次上传的时候就不需要再写了
  • 第二次上传

    • 第二次上传的时候,因为有刚才的记录,就不需要再写 originmaster

    • 会默认传递到 origin 这个地址的 master 分支上

    • 除非你要传递到别的分支上的时候再进行书写

      # 第二次上传
      $ git push
      
  • 到这里,就完成了一次 git 推送

  • 这个时候本地的文件夹就真的可以删除了

  • 因为远程有一份我们的内容,本地的删除了,可以直接把远程的拉回来就行

GIT 克隆

  • git 克隆是指把远程仓库里面的内容克隆一份到本地

  • 可以克隆别人的 公开 的仓库,也可以克隆自己的仓库

  • 克隆别人的仓库,我们只能拿下来用,修改后不能从新上传

  • 克隆自己的仓库,我们修改后还可以再次上传更新

  • 我们先找到一个别人的仓库,或者自己的仓库(这里以 jQuery 的仓库为例)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qcPmZvFm-1646293206554)(C:\Users\Administrator\Desktop\lesson\二阶段\JavaScript课程\day33\images\github克隆仓库1.png)]

  • 复制好地址以后,选择一个我们要存放内容的文件夹(我这里以桌面为例)

  • 直接在想存放内容的位置打开 git base

  • 输入克隆指令 git clone 仓库地址

    # 直接克隆仓库
    $ git clone https://github.com/jquery/jquery.git
    
  • 等待一段时间

  • 你就会发现你的文件夹里面多了一个叫做 jquery 的文件夹

  • 里面就是人家仓库的所有内容

GIT 下拉

  • 不管是你克隆下来的仓库还是别的方式弄得本地仓库

  • 当人家的代码更新以后,你想获得最新的代码

  • 我们不需要从新克隆

  • 只要拉取一次代码就可以了

  • 直接在项目文件夹里面使用指令下拉

    # 拉取远程最新代码
    $ git pull
    
  • 这样一来,你本地的仓库就可远程的仓库同步了


举报

相关推荐

【git】git使用

Git使用

git 使用

git使用

【GIT】Git 使用必会命令

0 条评论