前端 —— Git

发布于:2024-12-18 ⋅ 阅读:(146) ⋅ 点赞:(0)

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次




网站公告

今日签到

点亮在社区的每一天
去签到