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

前端 —— 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次



http://www.lryc.cn/news/502743.html

相关文章:

  • 【GL006】Linux 之 shell
  • JS听到了强运的回响
  • Linux下MySQL的简单使用
  • .net core使用AutoMapper
  • nmap详解
  • CentOS7环境安装php
  • 基于深度学习的猫狗识别系统【深度学习课设】
  • 字体子集化实践探索
  • A1017 基于Java+JSP+SQL Server+servlet的二手购物平台的设计与实现
  • Simdroid-EC:液冷仿真新星,助力新能源汽车电机控制器高效散热
  • C语言——实现并求出两个数的最大公约数
  • 今天你学C++了吗?——C++中的类与对象(日期类的实现)——实践与知识的碰撞❤
  • 享元模式的理解和实践
  • Unreal Engine 中的UI界面开发
  • Docker在Ubuntu和CentOS系统下的安装
  • EXCEL 关于plot 折线图--频度折线图的一些细节
  • Hive操作案例
  • C++ 内存管理和模板与STL
  • JDK8新特性:Stream
  • 前端传入Grule,后端保存到 .grl 文件中
  • 探索《Crypto Rumble》 游戏:经济模型篇
  • 【CSS in Depth 2 精译_072】第 12 章 CSS 排版与间距概述 + 12.1 间距设置(上):究竟该用 em 还是 px
  • Elasticsearch对象映射
  • Oracle 19c rac 补丁升级,从19.7 to19.22-集群
  • 机器学习--Kaggle的使用
  • 客户服务新突破,天润融通助力电动车企业实现数智化转型
  • 力扣题目 - 2931.购买物品的最大开销
  • 智慧化工园区自动化在线监测,建立产业链路数字安全网
  • 在Docker中运行MySQL的思考:挑战与解决方案
  • Linux中所有和$有关的操作