Git学习笔记(第7章):IDEA实现Git操作(VSCode)

目录

[7.1 配置忽略文件](#7.1 配置忽略文件)

[7.2 初始化本地库](#7.2 初始化本地库)

[7.3 添加暂存区、提交本地库](#7.3 添加暂存区、提交本地库)

[7.4 修改文件](#7.4 修改文件)

补充:工具栏简介


7.1 配置忽略文件

问题引入

在版本控制系统中,有些文件或目录是不需要纳入版本管理的,比如编译产生的临时文件、日志文件、缓存文件等。
解决方案

  • 配置 :在项目根目录下,创建一个名为.gitignore的文件,并添加规则
  • 作用 :通过配置.gitignore文件,可以指定Git在提交时忽略这些不需要跟踪的文件或目录
  • 参考 :GitHub官网上有一个gitignore仓库,包含了各种语言和开发环境的.gitignore文件,可以作为起点。
  • Python项目中常见的忽略文件和目录:在下面例子中,每一行都描述了一个需要被忽略的模式。这些模式可以是文件名、目录名、通配符等。规则简单明了,* 代表任意字符,/ 表示目录,# 表示注释。
    • pycache/:Python的字节码缓存目录。
    • *.pyc:Python编译生成的文件。
    • .pyo:优化后的Python文件。
    • *.pyd:Python动态链接库文件。
    • dist/ 和build/:构建过程中生成的临时和输出文件。
    • .venv/ 和venv/:虚拟环境目录。
    • .idea/ 和.vscode/:IDE生成的配置文件。
    • .ipynb_checkpoints/:Jupyter Notebook生成的检查点目录。
    • env/ 和venv/:环境目录,一般包含在项目中创建的虚拟环境。

7.2 初始化本地库

Step1 :查看初始化本地仓库前的文件目录结构


Step2:初始化本地仓库


Step3 :查看初始化本地仓库后的文件目录结构

  • 注1:vscode默认隐藏某些文件夹,需要取消隐藏
  • 注2 :"**/.git "是一个glob模式,用于匹配项目中所有子目录中的 .git 文件夹
    • **:表示递归匹配任意目录
    • /:表示目录分隔符
    • .git:表示匹配的目录名称

7.3 添加暂存区、提交本地库

Step1:添加暂存区

  • Step1.1:查看本地库状态
  • Step1.2:逐个或全部添加暂存区
  • Step1.3:再次查看本地库状态


Step2:提交本地库

  • Step2.1:点击"Commit"按钮
  • Step2.2:填写描述信息
  • Step2.3:查看本地库状态
  • U:Untracked(新增文件、未被跟踪的文件)
  • A:Index Added
  • M:Modified(修改文件)
  • D:Deleted(删除文件)

7.4 修改文件

  • 第二次修改(删除一行,添加一行) → 添加暂存区 → 提交本地库
  • 第三次修改(修改一行,添加一行) → 添加暂存区 → 提交本地库
  • 注:对于历史版本的查看和版本穿梭,需要借助插件。

补充:工具栏简介

菜单栏

  • View as Tree (树状视图) VS. View as List (列表视图)
  • Commit:一般不用
  • Refresh:当项目发生改动时,可点击此处进行刷新
  • Views and More Actions...:各种Git命令的集成


Changes

红色变为阴影:删除此行(改)

红色变为绿色:修改此行(删)

阴影变为绿色:添加此行(增)

相关推荐
我的xiaodoujiao5 分钟前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 38--Allure 测试报告
python·学习·测试工具·pytest
好奇龙猫6 小时前
【AI学习-comfyUI学习-第三十节-第三十一节-FLUX-SD放大工作流+FLUX图生图工作流-各个部分学习】
人工智能·学习
saoys6 小时前
Opencv 学习笔记:图像掩膜操作(精准提取指定区域像素)
笔记·opencv·学习
电子小白1237 小时前
第13期PCB layout工程师初级培训-1-EDA软件的通用设置
笔记·嵌入式硬件·学习·pcb·layout
唯情于酒8 小时前
Docker学习
学习·docker·容器
clorisqqq9 小时前
人工智能现代方法笔记 第1章 绪论(1/2)
人工智能·笔记
charlie1145141919 小时前
嵌入式现代C++教程: 构造函数优化:初始化列表 vs 成员赋值
开发语言·c++·笔记·学习·嵌入式·现代c++
IT=>小脑虎10 小时前
C++零基础衔接进阶知识点【详解版】
开发语言·c++·学习
#眼镜&10 小时前
嵌入式学习之路2
学习
码农小韩10 小时前
基于Linux的C++学习——指针
linux·开发语言·c++·学习·算法