IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Git入门-git的概念和基础命令 -> 正文阅读

[系统运维]Git入门-git的概念和基础命令

版本控制:

版本控制可以有四种方式:

  1. 通过拷贝然后进行修改,此时电脑会看到有许多文件,每个文件就是一个版本
  2. 本地版本控制:在自己电脑上装一个软件,然后电脑上只会看到一个文件,但是之前的版本会保存起来到某个地方

在这里插入图片描述

  1. 集中式版本控制(比如SVN):本地版本控制在不同主机上无法进行协作,所以选择把所有版本存在中央服务器上

在这里插入图片描述

  1. 分布式版本控制(比如git):集中式版本控制一旦主机和服务器之间断开了连接或者服务器出现故障,就无法正常运行,因为每个主机上只存在一个版本。而分布式版本控制除了在服务器(github或者gitlab)上有不同的历史版本,在主机上也会有不同的历史版本。假设主机A更新了一个版本V4,则它会先将这个版本推送到本地,再推送到服务器,这样即使服务器挂了在本地也有V4。

在这里插入图片描述

git的快速使用:

  1. 进入需要管理的文件夹

  2. git init:初始化当前的文件夹,即git来管理这个文件夹

  3. git status:检测当前目录下文件的状态,三种状态的变化如下:

    • 红色:新增的文件/修改了的文件,此时执行git add 文件名(.表示将当前文件夹的所有文件add),查看状态时则变为绿色

    • 绿色:git已经管理的文件,但是还未生成版本,此时执行git commit -m 描述信息后生成版本,查看状态时显示work tree clean

    • 无内容:生成了版本

  4. 在生成版本前需要进行个人信息的配置:

    • git config --global user.email 'you@examlpe.com'

    • git config --global user.name 'your name'

  5. git log:查看版本记录

git的三个区域:

工作区:正在操作的文件夹,分为两种状态:已管理的文件和新/修改的文件(即红色部分),git会自动检测这两个状态并进行已管理->新/增的转换

暂存区:工作区到暂存区就是从红色变为绿色,即使用git add命令。这个区域可以视为缓冲区

版本库:从绿色部分部分变为无内容,即使用git commit命令

回滚:

假设有三个版本,V1, V2, V3:

git reset --hard '需要回滚的版本号(hash编码)':当使用该命令回滚到V2的时候,此时使用git log命令去查版本,V3是不见的。此时需要使用:

git reflog:使用完该命令会出现之前版本的版本号,再使用回滚命令即可

总结

在这里插入图片描述

git checkout:假设在index.html中进行了修改(在此之前working tree clean),即在工作区有文件变动到红色区域。此时使用git checkout --index.html就可以将改动的内容还原,即所有文件都已控制。

git reset Head:假设已经将index.html的修改进行add到暂存区,则可以使用git reset HEAD index.html将index.html的修改返回到红色部分

参考

https://www.bilibili.com/video/BV17r4y1K7HB?p=1->https://www.bilibili.com/video/BV17r4y1K7HB?p=8

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-12-14 16:22:28  更:2021-12-14 16:22:48 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 4:44:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码