前端 —— Git
Git安装
下载安装包
【免费】前端前置-Git安装包资源-CSDN文库
安装 ‘git‘不是内部或外部命令及Git 的保姆级安装教程(保姆级教程)_git不是内部或外部命令-CSDN博客
vscode添加gitbash终端
setting.json
"terminal.integrated.profiles.windows": {"gitBash": {"path": "E:\\Git\\bin\\bash.exe",//这里是的的bash路径}}

查看git版本号

Git配置用户信息
配置:用户名和邮箱,应用在每次提交代码版本时 表面自己身份
命令:
git config --global user.name "itheima"
git config --global user.email "itheima@itcast.cn"
查看清单:git config --list

Git仓库
记录文件状态内容的地方,存储着所有修改过的历史记录(.git文件夹)
创建:把本地文件夹转换成Git仓库 git init
Git的三个区域
工作区:实际开发时我们操作的项目代码的文件夹
git add 文件名:暂存指定文件 ;
git add . :暂存所有新的、变化的文件
—— 工作区变化内容添加到暂存区
暂存区:暂时存储我们即将要保存的 那些变更的文件内容
git commit -m "注释说明" :提交并保存,产生版本快照 —— 暂存区里的记录快照记录到版本库中
版本库:保存暂存区中的内容 并且每次提交保存时产生一套版本快照
需求:把登陆页面新增后(工作区),暂存并提交
1. 工作区内容放入暂存区

2. 查看当前项目下暂存区都记录了哪些文件:git ls-files

3. 确认要产生一次版本记录:git commit -m "1.登录页面-标签部分准备"

Git文件状态
Git文件2种状态:
未跟踪:工作区新建的文件,从未被Git管理过
已跟踪:Git已经知道有这样一个文件存在了
| 文件状态 | 概念 | 场景 |
| 未跟踪 U | 从未被Git管理过 | 新文件 |
| 新添加 A | 第一次被Git暂存 | 版本库中版本记录无此文件 |
| 未修改 '' | 三个区域统一 | 提交保存之后 |
| 已修改 M | 工作区内容变化 | 修改了内容产生 |
需求:新增css文件,并使用git status -s查看工作区和暂存区对文件不同状态的标记,并最终提交
输出当前只有改动过的文件 对应的状态
第一列是当前文件在暂存区的状态;第二列是当前文件在工作区的状态





暂存区新添加;工作区未修改

Git暂存区使用
暂存区:暂时存储
暂存区->临时覆盖->工作区,进行内容的恢复;命令:git restore 目标文件
使用场景:想用暂存区重新恢复到刚刚暂存时的状态
从暂存区移除文件,命令:git rm --cached 目标文件
查看暂存区文件列表,命令:git ls-files
Git回退版本
把版本库某个版本对应的内容快照,恢复到工作区/暂存区
查看之前所有的提交历史:git log --oneline
查看回退之后,在往未来的一些提交记录:git reflog --oneline
回退命令:
git reset --soft 版本号 尽可能保留原本在工作区和暂存区里的内容(只不过文件会变为未被git跟踪的状态)
git reset --hard 版本号 暂存区和工作区都只有html,其他的都会被清除掉
git reset --mixed 版本号 html覆盖到暂存区(暂存区里只有html),工作区还会保留那些js、css文件,变为为工作状态
注意:
1. 只有记录在版本库的提交记录才能恢复
2.

删除文件
需求:删除editor.js文件,并产生一次版本记录
步骤:
- 手动删除工作区文件
- 手动删除/暂存变更 暂存区文件造成变更
手动删除:git rm --cached 目标文件
暂存变更:git add .
- 提交保存

忽略文件
.gitignore文件 可以让git彻底忽略跟踪指定文件
目的:让git仓库更小更快
例如:
node_modules —— npm i 下载第三方包,不需要让git记录里面的代码同步给别人
忽略密钥文件
*.pem
*.cer
创建:
- 项目根目录新建.gitignore文件
- 填入相应配置来忽略指定文件

分支
指向提交的某个记录的可变指针,默认名字:master
默认情况下,master指向最后一次的提交记录

HEAD指针影响工作区/暂存区的代码状态
在本地git仓库当中,可能会有很多个分支,master,content,publish;
当前工作区/暂存区里边的代码进行变化的时候,到底是在哪个分支下操作的,就需要用HEAD指针进行一个标记
场景:
- 开发新需求业务
- 修复Bug
保证主线代码随时可以使用,且不受影响

需求:创建内容列表content分支,并产生3次提交记录
步骤:
创建新分支:git branch 分支名
以当前HEAD指针指向的 提交记录 作为起点,把新分支指向这次的 提交记录

切换分支:git checkout 分支名
把HEAD指针指向刚刚新创建的分支下


工作区准备代码并暂存提交,重复3次







相关文章:
前端 —— Git
Git安装 下载安装包 【免费】前端前置-Git安装包资源-CSDN文库 安装 ‘git‘不是内部或外部命令及Git 的保姆级安装教程(保姆级教程)_git不是内部或外部命令-CSDN博客 vscode添加gitbash终端 setting.json "terminal.integrated.profiles.win…...
【GL006】Linux 之 shell
目录 一、shell 指令 1.1 体验shell指令 1.2 命令格式 1.3 shell中的通配符 1.4 输入输出重定向 1.5 命令置换 1.6 基本系统维护命令 1.7 Linux的进程管理命令 1.8 文件系统相关命令 1.9 Linux网络配置管理 二、shell 编程 2.1 shell 脚本的基础知识 2.2 shell 变…...
JS听到了强运的回响
正则表达式 介绍 正则表达式是用于匹配字符串中字符组合的模式,在JS中,正则表达式也是对象 通常用来查找,替换那些符合正则表达式的文本 就是筛选出符合条件的一类人 比如说 有人喜欢玩艾斯爱慕,那他喜欢的就是这一类人&…...
Linux下MySQL的简单使用
Linux下MySQL的简单使用 导语MySQL安装与配置 MySQL安装密码设置 MySQL管理 命令 myisamchkmysql其他 常见操作 C语言访问MYSQL 连接例程错误处理使用SQL 总结参考文献 导语 这一章是MySQL的使用,一些常用的MySQL语句属于本科阶段内容,然后是C语言和M…...
.net core使用AutoMapper
AutoMapper 是一个用于 .NET 平台的对象映射工具,它简化了不同对象类型之间的转换过程。在软件开发中,尤其是在分层架构的应用程序里,常常需要在不同的对象模型之间进行数据传递,例如从数据库实体到视图模型、DTO(数据…...
nmap详解
Nmap(Network Mapper)是一个开放源代码的网络探测和安全审核的工具。由于它的功能强大,被广泛应用于网络安全领域。以下是Nmap的一些主要功能及其在实战中的应用举例。 Nmap的主要功能: 端口扫描:检测目标主机上开放…...
CentOS7环境安装php
直接安装 yum -y install php CentOS7默认安装是php5,现在php已有8.3版本 先查看php -v 版本 如果是低版本,可以删除 yum remove php yum remove php-fpm yum remove php-common 一、添加REMI存储库 yum install epel-release yum install -y …...
基于深度学习的猫狗识别系统【深度学习课设】
🏆 作者简介:席万里 ⚡ 个人网站:https://dahua.bloggo.chat/ ✍️ 一名后端开发小趴菜,同时略懂Vue与React前端技术,也了解一点微信小程序开发。 🍻 对计算机充满兴趣,愿意并且希望学习更多的技…...
字体子集化实践探索
最近项目rust生成PDF组件printpdf需要内嵌完整字体导致生成的PDF很大,需要做压缩,但是rust的类库allsorts::subset::subset不支持windows,所以做了一些windows下字体子集化的尝试 方案一:node.js做子集化 fontmin 缺点是也需要集…...
A1017 基于Java+JSP+SQL Server+servlet的二手购物平台的设计与实现
二手购物平台 1.摘要2.开发目的和意义3.系统功能设计4.系统界面截图5.源码获取 1.摘要 摘 要 计算机以及网络技术的飞速发展,网络的应用在全国乃至全球日益普及,随着人们的思想水平和生活水平的提高,网络已经是人们必不可少的一部分。人们的…...
Simdroid-EC:液冷仿真新星,助力新能源汽车电机控制器高效散热
近年来,新能源电动车的销量呈现出快速增长的态势。据统计,2024 年1-10月中国新能源汽车销量达728万辆,同比增长37.8%。 电机控制器在新能源汽车中对于保障动力和安全性能扮演着至关重要的角色,其核心部件IGBT(绝缘栅双…...
C语言——实现并求出两个数的最大公约数
问题描述:求出两个数的最大公约数 //求两个数的最大公约数 #include<stdio.h> #include<stdlib.h> #include<string.h> #include<math.h> #include<time.h>int main() {int a,b;printf("请您输入两个数 a 和 b\n");scanf…...
今天你学C++了吗?——C++中的类与对象(日期类的实现)——实践与知识的碰撞❤
♥♥♥~~~~~~欢迎光临知星小度博客空间~~~~~~♥♥♥ ♥♥♥零星地变得优秀~也能拼凑出星河~♥♥♥ ♥♥♥我们一起努力成为更好的自己~♥♥♥ ♥♥♥如果这一篇博客对你有帮助~别忘了点赞分享哦~♥♥♥ ♥♥♥如果有什么问题可以评论区留言或者私信我哦~♥♥♥ ✨✨✨✨✨✨ 个…...
享元模式的理解和实践
在软件开发中,性能优化是一个永恒的话题。在追求高性能的过程中,减少内存的使用是一项重要的任务。享元模式(Flyweight Pattern)就是一种用于减少内存使用量的设计模式,它特别适用于存在大量重复对象的场景。本文将详细…...
Unreal Engine 中的UI界面开发
推荐的使用方式 轻量级 HUD:使用 Canvas 绘制简单的文本、调试信息或基础 UI(如准星、血量条等)。 复杂 UI:使用 UMG(Unreal Motion Graphics)和 Slate 进行布局和交互,避免手动管理 Canvas 绘制。 避免遮挡场景:仅绘制必要的内容,并利用透明度(如 FLinearColor(1, 1…...
Docker在Ubuntu和CentOS系统下的安装
目录 1. 各版本平台支持情况2. 在Ubuntu系统下安装docker3. 常见报错4. Docker的镜像源修改5. Docker目录修改6. 在CentOS系统下安装docker 1. 各版本平台支持情况 (1)平台支持情况如下: Server 版本 桌面版本 2. 在Ubuntu系统下安装docker…...
EXCEL 关于plot 折线图--频度折线图的一些细节
目录 0 折线图有很多 1 频度折线图 1.1 直接用原始数据做的频度折线图 2 将原始数据生成数据透视表 3 这样可以做出了,频度plot 4 做按某字段汇总,成为累计plot分布 5 修改上面显示效果,做成百分比累计plot频度分布 0 折线图有很多 这…...
Hive操作案例
目录 idea/dg远程连接导入数据建表数据导入 idea/dg远程连接 hive的详细安装不多展示,自行搜索即可。 依次启动zookeeper,hadoop 在zookeeper的节点上启动如下指令(我的是1个主节点和2个备用节点) 启动Hive的metastore࿰…...
C++ 内存管理和模板与STL
此篇目是之后各种C库的基础 目录 内存管理 内存分布 内存管理方式 new和delete operator new 与 operator delete函数 实现原理 定位new表达式(placement-new) 模板基础 泛型编程 模板 函数模板 类模板 STL 组成部分 内存管理 内存分布 int globalVar 1; //全局变量 静…...
JDK8新特性:Stream
JDK8最大的改变: 1. lambda表达式 2. Stream 1. Steam流的入门 什么是Stream? 也叫Stream流,是jdk8开始的一套API,用于操作集合或者数组中的数据 优点: Stream流大量结合了Lambda的语法风格来创建,提…...
网络六边形受到攻击
大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...
大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...
Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)
本期内容并不是很难,相信大家会学的很愉快,当然对于有后端基础的朋友来说,本期内容更加容易了解,当然没有基础的也别担心,本期内容会详细解释有关内容 本期用到的软件:yakit(因为经过之前好多期…...
STM32HAL库USART源代码解析及应用
STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...
计算机基础知识解析:从应用到架构的全面拆解
目录 前言 1、 计算机的应用领域:无处不在的数字助手 2、 计算机的进化史:从算盘到量子计算 3、计算机的分类:不止 “台式机和笔记本” 4、计算机的组件:硬件与软件的协同 4.1 硬件:五大核心部件 4.2 软件&#…...
4. TypeScript 类型推断与类型组合
一、类型推断 (一) 什么是类型推断 TypeScript 的类型推断会根据变量、函数返回值、对象和数组的赋值和使用方式,自动确定它们的类型。 这一特性减少了显式类型注解的需要,在保持类型安全的同时简化了代码。通过分析上下文和初始值,TypeSc…...
在 Spring Boot 中使用 JSP
jsp? 好多年没用了。重新整一下 还费了点时间,记录一下。 项目结构: pom: <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://ww…...
LangFlow技术架构分析
🔧 LangFlow 的可视化技术栈 前端节点编辑器 底层框架:基于 (一个现代化的 React 节点绘图库) 功能: 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...
Linux-进程间的通信
1、IPC: Inter Process Communication(进程间通信): 由于每个进程在操作系统中有独立的地址空间,它们不能像线程那样直接访问彼此的内存,所以必须通过某种方式进行通信。 常见的 IPC 方式包括&#…...
