当前位置: 首页 > article >正文

Git版本管理工具(基础):这一篇基本能满足Git基本的使用需求了!

文章目录

  • Git
      • 01-什么是Git
          • 作用
      • 02-使用Git
      • 03-Git仓库
          • 创建
      • 04-Git的三个区域
          • 三个区域
      • 05-Git文件状态
      • 06-Git暂存区使用
      • 07-Git回退版本
      • 08-删除文件

Git

01-什么是Git


答:他是一个免费开源的,分布式代码版本控制系统,帮助开发团队维护代码


作用
  1. 记录代码内容,切换代码版本,多人开发时高效合并代码内容。

学会使用有两点需要学习

  1. 个人本机使用:Git基础命令和概念
  2. 多人共享使用,团队开发同一个项目的代码版本管理

02-使用Git

Git安装:Windows和Mac都是默认点击下一步即可。

  • 如何检验成功呢?

    1. 打开bash终端(Git专用的)
    2. 命令:git -v(查看版本号)
  • 如何配置用户信息呢?

    1. 采用用户名和邮箱,应用在每次提交代码版本时表明自己的身份
    2. 命令:
      • git config --global user.name “用户名”
      • git config --global user.email “邮箱号”

03-Git仓库


Git仓库(repository) : 记录文件状态内容的地方,存储着修改的历史记录。


创建
  1. 把本地文件夹转换成Git仓库: 命令 git init
  2. 从其他服务器上克隆Git 仓库

那么如何创建一个空白的Git仓库?

  1. 执行 命令 git init
  2. 会得到一个(.git文件夹)隐藏的文件项目,那么我们需要在文件夹中,关闭隐藏项目按钮,就可以看到。

04-Git的三个区域


三个区域
  1. 工作区:实际开发时操作的文件夹
  2. 暂存区:保存之前的准备区域(暂存改动过的文件)
  3. 版本库:提交并保存暂存区中的内容,产生一个版本快照

命令作用
git add 文件名暂存制定文件
git add .暂存所有改动的文件
git commit -m “注释说明”提交并保存,产生版本快照

git ls-files 命令查看更改后的信息


05-Git文件状态


Git文件2种状态:

  1. 未跟踪: 新文件,未被Git管理过
  2. 已跟踪: Git已经知道和管理的文件
文件状态概念场景
未跟踪(U)从未被Git管理过新文件
新添加(A)第一次被Git暂存之前版本记录无此文件
未修改(‘’)三个区域统一提交保存后
已修改(M)工作区内容变化修改了内容产生

git status -s查看文件状态


06-Git暂存区使用


  • 暂存区: 暂时存储,可以临时恢复代码内容,与版本库解耦

  • (将暂存区的文件恢复到工作区)暂存区 -> 覆盖 -> 工作区,命令: git restore 目标文件(注意:完全确认覆盖时使用)

  • 从暂存区移除文件,命令: git rm --cached 目标文件

如何查看我们快照的记录呢?

使用: $ git log --oneline 命令


07-Git回退版本


如何查看我们提交历史的记录呢?

使用: $ git log --oneline 命令

​ git reflog --oneline命令


回退命令:

  1. git reset --soft 版本号(其他文件未跟踪)
  2. git reset --hard版本号(强制覆盖暂存区和工作区的命令)
  3. git reset --mixed 版本号(与 git reset 等价)

注意1:只有记录在版本库的提交记录才能恢复

注意2: 回退后,继续修改 -> 暂存 -> 提交操作即可(产生新的提交记录过程)


08-删除文件


步骤:

  1. 手动删除工作区文件
  2. 暂存变更/手动删除暂存区文件造成变更
  3. 提交保存

总结: 工作区只要改变,都可以暂存提交产生新纪录


http://www.kler.cn/a/229438.html

相关文章:

  • LeetCode100之搜索二维矩阵(46)--Java
  • 【汇编】x86汇编编程寄存器资源心中有数
  • springboot vue uniapp 仿小红书 1:1 还原 (含源码演示)
  • HTML中meta的用法
  • 后端开发 Springboot整合Redis Spring Data Redis 模板
  • 口碑很好的国产LDO芯片,有哪些?
  • WiFi 6 和WiFi 6e 的核心要点
  • 谷歌免费开放模糊测试框架OSS-Fuzz(物联网、车联网、供应链安全、C/C++)
  • clickhouse计算前后两点间经纬度距离
  • C++结构化绑定
  • GEDepth:Ground Embedding for Monocular Depth Estimation
  • 函数的连续与间断【高数笔记】
  • CAEX 学习记录
  • MATLAB语音去噪系统
  • docker自定义镜像并使用
  • Node.js+Express+Mysql服务添加环境变量
  • git 的基本概念
  • KY114 Coincidence
  • Unity接入GVoice腾讯实时语音
  • 【安卓跨程序共享数据,探究ContentProvider】
  • 动态规划01 三步问题[C++]
  • HarmonyOS鸿蒙ArkTS证件照生成模板(适合二次开发,全套源码版)
  • 正点原子-STM32通用定时器学习笔记(1)
  • 防范恶意勒索攻击!亚信安全发布《勒索家族和勒索事件监控报告》
  • 深度学习(12)--Mnist分类任务
  • 阿里云游戏服务器租用费用价格组成,费用详单