玩转Git

01Git介绍

Git是什么

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

Git的作用是什么?

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

Git应用场景介绍

  1. 多人开发代码管理

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

  1. 异地开发代码管理

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

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

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

    别着急,有了git之后,一键搞定。

版本管理工具还有其他的么?

  • git:目前使用最多的版本管理工具
  • svn:也有公司在用,用法与git类似(相当于腾讯视频和优酷视频)

02Git安装流程

下载

地址:https://git-scm.com/downloads

玩转Git_第1张图片

安装

全程默认点击即可,不用修改其他选项 (建议:不要安装在C盘之外的位置)

检测是否安装成功

如果在电脑任意文件夹中点击右键,能够出现Git命令选项,则说明安装成功

玩转Git_第2张图片

mac系统

1.首先使用自带的终端,输入 : git --version , 然后回车如果看到版本号。说明已经安装

2.如果没有看到版本号,可以在终端输入: brew install git , 然后回车等待安装。 安装成功之后重复步骤1,检查是否安装成功

03配置用户信息

为啥要配置

安装完git这个软件之后,要做的第一件事情就是设置自己的 用户名邮件地址 ,这样我们就可以知道哪些人提交了什么代码。

配置用户信息命令

git config --global user.email “你的码云账号邮箱”

git config --global user.name “你的码云用户名(可以随便写)”

注意:

  1. 通过 git config --global user.name 和 git config --global user.email 配置的用户名和邮箱地址,会被写入到 C:/Users/用户名文件夹/.gitconfig 文件中。这个文件是 Git 的全局配置文件,配置一次即可永久生效。
  2. 上面的邮箱和用户名可以不是真实的, 也可以后面自行修改

玩转Git_第3张图片

查看所有的全局配置

查看所有的全局配置

  • git config --list --global

查看指定的全局配置项

  • git config user.name
  • git config user.email

04使用git的基本工作过程

目标

掌握git的基本工作流程

9个常见操作

程序员比较高频的操作有9个。具体如下。

  • 1.新建项目文件夹(只做一次)
  • 2.进入文件夹 (重要)
  • 3.初始化仓库:git init(只做一次)
  • 4.编码
  • 5.添加文件信息: git add .
  • 6.确认添加信息:git commit -m"描述信息"
  • 7.查看详细日志信息:git log
  • 8.查看简略日志信息:git log --oneline
  • 9.版本回滚:git reset --hard 版本号

第123步一个项目只需要一次,456步频繁使用,789步偶尔会用

1.新建文件夹

玩转Git_第4张图片

如果是老项目(已经存在的项目),这步可以省略了。

2.启动进入git命令

进入这个文件夹, 点击右键选择Git Bash Here

玩转Git_第5张图片

打开git命令行工具

3. 初始化项目

在小蓝窗输入 git init

注意:玩转Git_第6张图片

  1. 如果是老项目,这一步就省略了。
  2. .git目录可能是隐藏的,需要设置为可见才能看到

4. 编码(程序员的日常工作)

在这个目录下正常做开发:创建文件,修改文件内容…

例如: 添加 index.txt,并写入一些内容(任意内容均可)

5. 添加存档

命令: git add .

注意:这个命令只是将文件信息添加到暂存区,还没有真正存档,需要使用git commit命令确认存档才可以

6. 确认存档

命令 git commit -m "说明"

图示

以上流程是实际开发中主要使用流程

玩转Git_第7张图片

git的三个区

三个区

●工作区: 处理工作的区域
●暂存区: 临时存放的区域
●本地git仓库: 最终的存放区域

对比理解

生活

玩转Git_第8张图片

文件夹

  • 工作区: 在你电脑里看到的目录
  • 暂存区: 在.git文件夹内的index中 (二进制记录)
  • 版本库: 指的整个.git文件夹 (也认为是本地仓库)

在代码中的体现
玩转Git_第9张图片

三个区与git命令

玩转Git_第10张图片

07查看文件状态

没有被托管的文件: 未跟踪

已被托管(曾经add,commit过)的文件:已修改,已暂存,已提交

命令

# 查看仓库文件的状态
git status

# 查看简略版信息
git status -s

在这里插入图片描述

改动文件之后:

玩转Git_第11张图片

玩转Git_第12张图片

玩转Git_第13张图片

新添加文件:

玩转Git_第14张图片

玩转Git_第15张图片

  • 未跟踪(新增的文件)
  • 已修改(文件曾经被Git记录过了,然后在工作区对他进行了修改)
  • 已暂存(新增的文件,添加到暂存区之后的状态)
  • 已提交(nothing to commit)
    • 表示没有什么东西可以提交了;即所有的内容都已经提交给git仓库了。
    • 有的文档也把这个状态叫做 未修改,意思是自上次提交过后,代码还没有修改过

08代码恢复

从工作区恢复

改动了代码,想放弃修改(此时并没有add)

玩转Git_第16张图片

git status

git restore 文件名

从暂存区恢复

改动了代码,也add了,此时想放弃。

git reset HEAD 文件名

git checkout – 文件名

整体回滚

在这里插入图片描述

回滚之后

玩转Git_第17张图片

git reset --hard 提交流水号

会导致log信息不全。改用 git reflog

讲的比较粗略,git的远程仓库以及相关操作后面再详细说,欢迎大家指正其中可能存在的错误和问题 谢谢大家

你可能感兴趣的:(git,github)