史上最详细Git使用教程

211 阅读7分钟

Git介绍

下载地址:git-scm.com/downloads

Git是什么?

-   `Git`版本控制系统`是`一个分布式的系统,`是`用来保存工程源代码历史状态(游戏存档)的`命令行`==工具==

    -   ==GIT是一个命令行工具,用于版本控制(存档器)==
  • 2.Git作用是什么?

    • 版本管理工具:说人话就是可以记录你敲代码的每一个环节(类似于玩游戏存档)
  • 3.Git应用场景介绍

    • a. 多人开发代码管理 : 目前我们多人代码的时候,想把代码合并一起是利用最原始的复制粘贴操作。有了git之后,可以一键搞定

    • b.异地开发代码管理:实际开发中,我们上班可能会用公司电脑敲代码。有时候回到家里用自己电脑偷偷加个班,以前的做法是备一个U盘,复制粘贴。有了git之后,直接一键搞定。

    • c.版本管理 :比如我现在公司网站已经做出来了1.0版本在使用,现在计划增加一些新功能,但是这个功能不稳定需要经过开发和测试环节,为了不影响现有的稳定版本。以前的做法是把稳定版本单独拷贝一份增加功能,等做好之后再把以前版本给替换掉。有了git之后可以一键搞定。

    • d.版本回滚:比如这周产品经理提出一个功能,我辛辛苦苦写了一周代码。到了下周,产品经理说这个功能不做了,叫我删掉改成其他功能。我们把代码删掉之后按照产品经理要求又辛辛苦苦写了一周代码。到了下下周,产品经理说这个功能还是没有上次那个好,还是改成上周的吧…………

      • 别着急,有了git之后,一键搞定。
  • 4.常见版本管理工具介绍

    • 1.git:目前使用最多的版本管理工具

    • 2.svn:也有公司在用,用法与git类似(相当于腾讯视频和优酷视频)

配置用户信息

-   1.安装完git之后,要做的第一件事情就是设置自己的 `用户名``邮件地址`

-   相当于是登录git账号操作
  • 2.如何获取git账号 : 可以在 码云 注册一个账号

  • 3.配置用户信息命令如下:

    • git config --global user.email "你的码云账号邮箱"
    • git config --global user.name "你的码云用户名(可以随便写)"

git工作流程与常用命令

微信图片_20220511135612.png

主要工作流程

  • 1.新建项目文件夹

  • 2.进入文件夹

  • 3.初始化仓库:git init

  • 4.编码

  • 5.添加文件信息: git add .

  • 6.确认添加信息:git commit -m"描述信息"

  • 7.查看详细日志信息:git log

  • 8.查看简略日志信息:git log --oneline

  • 9.版本回滚:git reset --hard 版本号

    • 通过查看历史提交日志信息就可以找到版本号

远程仓库介绍

  1.什么是远程仓库?

  远程仓库其实就是远程的服务器,帮我们存储代码的

       本地git存储:一旦你电脑丢了或者硬盘损坏,直接扑街
      远程git存储:如果你电脑坏了换了一个新的,只需要从网上重新下载即可
  • 2.常见的远程仓库有哪些?

    • (1)github:免费

      • 学习时候可以用,工作中有的小公司为了省钱也会用
    • (2)gitlab

    • (3)码云

    • (4)你们公司自己机房的服务器(工作中遇到)

      • 以上远程仓库使用流程几乎一致
  • 3.什么是GitHub?github.com/

    • 1.是一个免费的远程代码托管仓库

    • 2.是一个代码托管平台,很多优秀的开源的项目都有放在github上,供大家学习/使用.

      • 在这个网站可以找到很多别人写好的框架,例如jQuery,vue,axios 这个上面都有
    • 3.全球最大代码托管平台,由于使用者几乎都是男性。于是自嘲:"全球最大的同性交友网站"

    • 4.github和git是什么关系呢?

      • 没有半毛钱的关系,只是名字有点像而已。例如北大和北大某鸟的关系。

        • git是一个命令行工具,用于代码版本管理
        • gitthub是一个网站的名字:免费服务器帮别人存东西的(主要存代码)
  • 4.在国内,由于gitthub网速极慢,目前个人或某些小公司一般使用 码云

将远程代码拉取到本地

git pull
  • git pull:拉取,用于多人开发。比如别人写的代码文件提交到远程仓库,通过这个命令就可以将远程仓库代码拉取到本地

    • 这个命令不会拉取所有代码,只是拉取远程上面新增的代码(把别人写的代码合并到你的本地)
    • 这个命令,在多人开发的时候建议每天上班前执行一次
  • git clone:克隆,将整个远程仓库克隆到本地

    • 这个命名相当于拉取所有的代码(将整个远程仓库文件夹copy到你的本地)

    • 这个命令一般只会在项目开始的时候执行一次

远程仓库SSH配置

  • 1,远程仓库有两种访问方式,分别是HTTPSSSH

    • HTTPS:零配置;但是每次访问仓库时,需要重复输入 Github 的账号和密码才能访问成功

    • SSH:需要进行额外的配置;但是配置成功后,每次访问仓库时,不需重复输入 Github 的账号和密码

      • 实际开发推荐使用SSH方式访问远程仓库
  • 2.SSH 介绍

    • SSH key 的作用:实现本地仓库和 Github 之间免登录的加密数据传输。

    • SSH key 的好处:免登录身份认证、数据加密传输。

    • SSH key 由两部分组成,分别是:

      • id_rsa(私钥文件,存放于客户端的电脑中即可)
      • id_rsa.pub(公钥文件,需要配置到 Github 中)
  • 3.SSH配置流程

    • (1)打开 Git Bash
    • (2)输入命令: ssh-keygen -t rsa -b 4096 -C "你的码云邮箱"
    • (3)连续敲击 3 次回车,即可在 C:\Users\用户名文件夹.ssh 目录中生成 id_rsa 和 id_rsa.pub 两个文件
    • (4)使用记事本打开 id_rsa.pub 文件,复制里面的文本内容
    • (5)在你的远程仓库网址, 点击头像 -> 设置 -> SSH 公钥 -> 粘贴

分支介绍

  • 1.什么是分支?

    • 分支(branch)相当于给你的远程仓库(主分支master)代码copy一份,然后我们在这个copy的代码上进行开发。等功能做好之后,再把分支的代码推送到主分支.
  • 2.为什么要有分支?

    • a.举例1:比如你的网站第一个版本已经做好发布了,功能也很稳定。现在准备新增一些功能开发2.0版本,这时候如果你在原本稳定代码上工作,万一出现bug就会对原先稳定的代码造成影响。所以我们需要将原先代码copy一份进行开发,等2.0版本功能做好之后再和原先的1.0代码合并(相当于发布2.0正式版本)
    • b.举例2:比如你的项目1.0版本已经正式上线,然后突然出现了bug,如果我们直接在原先代码修复,就会影响其他功能。一般我们就可以建立一个分支(把原代码copy一份),等bug修复完毕之后。再与主分支合并,这样就可以很好的修复bug。一般这种版本称之为 1.x (1.1 、1.2、 1.3)

推送分支代码到远程仓库

  • 1.查看远程分支: git remote show 仓库别名

  • 2.推送分支代码到远程仓库 : git push -u origin 新分支名称

    • 小技巧 : 根本不需要记这个指令, 直接 git push即可。 如果是分支代码,你的git会自动给你提示,并且在下方告诉你推送这个分支正确的命名是什么。 到时候直接 CV 即可。

合并分支的便利图

snipaste20220511_192726.jpg