Git 版本控制系统

git相关代码

0、清屏幕:clear
1、查看版本号
git -v
2、暂存、更改、提交

3、当前项目下暂存区中有哪些文件
git ls-files
4、查看文件状态
git status -s
5、暂时存储,可以临时恢复代码内容
git restore 目标文件
//(注意:完全确认覆盖时使用)
6、从暂存区移除文件
git rm --cached 目标文件
7、查看版本库提交的
git log --oneline
8、回退命令

git reset --soft 版本号(工作区其他文件保留,其他文件未跟踪)
git reset --hard 版本号(工作区其他文件被清除)
git reset --mixed 版本号 (与 git reset 等价)(暂存区其他文件都没有,工作区其他文件变成未跟踪)

9、 如何查看提交历史?
git reflog --oneline
10、如何创建和切换指针?
git branch 分支名   //创建
git checkout 分支名  //切换
11、查看所有分支
git branch

1、Git 初识

2、Git 安装

Windows系统:exe 程序,默认下一步即可
Mac系统:dmg 程序,默认下一步即可
检验成功:

  1. 打开 bash 终端(git 专用)
  2. 命令:git -v(查看版本号)

3、Git 配置用户信息

配置:用户名和邮箱,应用在每次提交代码版本时表明自己身份
命令:
git config --global user.name “itheima”
git config --global user.email “itheima@itcast.cn”

git config --list //检查配置是否成功

4、总结

  1. 为何学习 Git ?
    管理代码版本,记录,切换,合并代码
  2. Git 学习:
    ✓ 现在本机自己使用
    ✓ 再学习多人共享使用
  3. 如何安装使用?
    ✓ 程序双击安装
    ✓ 在 VSCode 中使用 bash 终端以及 git 命令

5、掌握 Git 仓库


是一个隐藏的文件夹,在文档里面 点击查看 点击隐藏的项目 就会出现

小结

  1. 什么是 Git 仓库 ?
    ✓ 记录文件状态内容和历史记录的地方(.git 文件夹)
  2. 如何创建 Git 仓库?
    ✓ 把本地文件夹转换成 Git 仓库:命令 git init
    ✓ 从其他服务器上克隆 Git 仓库‘

6、Git 的三个区域

Git 使用时:
工作区:实际开发时操作的文件夹
暂存区:保存之前的准备区域(暂存改动过的文件)
版本库:提交并保存暂存区中的内容,产生一个版本快照
需求:把登录页面新增后,暂存并提交


当前项目下暂存区中有哪些文件:

git ls-files

小结

  1. Git 使用时有哪些区域 ?
    ✓ 工作区,暂存区,版本库
  2. 工作区的内容,最终要如何保存在版本库中?
    ✓ git add 添加到暂存区
    ✓ 等待时机后 git commit 提交保存到版本库,产生一次版本快照记录

7、Git 文件状态

Git 文件 2 种状态:
✓ 未跟踪:新文件,从未被 Git 管理过
✓ 已跟踪:Git 已经知道和管理的文件

使用:修改文件,暂存,提交保存记录,如此反复
需求:新增 css 文件,并使用 git status -s 查看文件状态,并最终提交


小结

  1. Git 文件状态分为哪 2 种 ?
    ✓ 未跟踪和已跟踪(新添加,未修改,已修改)
  2. 如何查看暂存区和工作区文件状态?
    ✓ git status -s

8、Git 暂存区使用

暂存区:暂时存储,可以临时恢复代码内容,与版本库解耦
暂存区 -> 覆盖 -> 工作区,命令:git restore 目标文件(注意:完全确认覆盖时使用
从暂存区移除文件,命令:git rm --cached 目标文件
在这里插入图片描述

9、练习-登录页面

需求:新增 JS 代码并暂存提交产生新的版本快照
步骤

  1. 新增 js 文件和内容
  2. 临时存放在暂存区
  3. 提交保存到版本库

    查看版本库提交的
git log --oneline

10、Git 回退版本

概念:把版本库某个版本对应的内容快照,恢复到工作区/暂存区
查看提交历史:git log --oneline

回退命令:
git reset --soft 版本号(工作区其他文件保留,其他文件未跟踪)
git reset --hard 版本号(撤销工作区中所有未提交的修改内容,将暂存区与工作区都回到上一次版本,并删除之前的所有信息提交, hard 参数,它会删除回退点之前的所有信息)
git reset --mixed 版本号 (与 git reset 等价)(暂存区其他文件都没有,工作区其他文件变成未跟踪)

注意1:只有记录在版本库的提交记录才能恢复
注意2:回退后,继续修改->暂存->提交操作即可(产生新的提交记录过程)

小结
  1. 什么是 Git 回退版本?
    ✓ 把版本库某个版本对应的内容快照,恢复到工作区/暂存区
  2. 强制覆盖暂存区和工作区的命令?
    ✓ git reset --hard 版本号
  3. 如何查看提交历史?
    ✓ git log --oneline
    ✓ git reflog --oneline

11、删除文件

需求:删除 editor.js 文件,并产生一次版本记录
步骤:

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

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

12、忽略文件

概念:.gitignore 文件可以让 git 彻底忽略跟踪指定文件
目的:让 git 仓库更小更快,避免重复无意义的文件管理
例如:

  1. 系统或软件自动生成的文件
  2. 编译产生的结果文件
  3. 运行时生成的日志文件,缓存文件,临时文件等
  4. 涉密文件,密码,秘钥等文件

创建:

  1. 项目根目录新建 .gitignore 文件
  2. 填入相应配置来忽略指定文件

注意:如果文件已经被暂存区跟踪过,可以从暂存区移除即可

13、分支

概念:本质上是指向提交节点的可变指针,默认名字是 master
注意:HEAD 指针影响工作区/暂存区的代码状态





查看所有分支:

git branch

小结

  1. 什么是 Git 分支?
    ✓ 指针,指向提交记录
  2. HEAD 指针的作用?
    ✓ 影响暂存区和工作区的代码
  3. 如何创建和切换指针?
    ✓ git branch 分支名
    ✓ git checkout 分支名

14、练习-登录 bug 修复

15、分支-合并与删除

16、分支-合并与提交


17、分支-合并冲突

18、Git 常用命令


19、Git 远程仓库

概念:托管在因特网或其他网络中的你的项目的版本库
作用:保存版本库的历史记录,多人协作
创建:公司自己服务器 / 第三方托管平台(Gitee,GitLab,GitHub…)

需求:创建远程版本库,并把本地 Git 仓库推送上去保存
步骤:

  1. 注册第三方托管平台网站账号
  2. 新建仓库得到远程仓库 Git 地址
  3. 本地 Git 仓库添加远程仓库原点地址
    命令:git remote add 远程仓库别名 远程仓库地址
    例如:git remote add origin https://gitee.com/lidongxu/work.git
  4. 本地 Git 仓库推送版本记录到远程仓库
    命令:git push -u 远程仓库别名 本地和远程分支名
    例如:git push -u origin master
    完整写法:git push --set-upstream origin master:master
    补充:第一次用gitee要登录,之后就不需要了
    如果以后不用这个仓库了,在控制面板 => 用户账号 => 凭据管理器 =>windows凭据中删掉 既可

    看有哪些远程仓库:
git remote -v

移除远程仓库:

git remote remove origin

小结

  1. 远程版本库的作用?
    ✓ 保存提交历史记录,多人共享
  2. 远程版本库使用步骤?
    ✓ 创建远程版本库(自己服务器/第三方托管平台)
    ✓ 本地版本库设置远程地址
    ✓ 推送本地版本库到远程
  3. 推送的命令?
    ✓ git push -u origin master

20、Git 远程仓库-克隆

克隆:拷贝一个 Git 仓库到本地,进行使用
命令:git clone 远程仓库地址
例如:git clone https://gitee.com/lidongxu/work.git
效果:在运行命令所在文件夹,生成 work 项目文件夹(包含版本库,并映射到暂存区和工作区)
注意1:Git 本地仓库已经建立好和远程仓库的链接
注意2:仓库公开随意克隆,推送需要身为仓库团队成员

打开一个文件夹,可以用cmd命令/右击 git bash 输入“git clone 远程仓库地址”命令,等待完成,克隆成功。
用cd 克隆过来的文件夹名字 进入
输入 git log --oneline 查看提交历史记录 上面有显示远程仓库的别名

21、多人协同开发


再次上传:git push origin master
再次拉取:git pull origin master

22、VSCode 中使用 Git

使用:源代码管理,进行暂存,撤销,对比差异,提交等操作

23、案例-发布黑马头条数据管理平台

需求:把 Webpack 压缩好的 dist 分发文件夹网页,部署到码云上,开启 Page 服务在互联网中浏览
步骤:

  1. 初始化本地 Git 仓库(这次是非空文件夹-配套素材 dist 文件夹)
  2. 初始化远程 Git 仓库(这一次也是非空的)
  3. 本地配置远程仓库链接
  4. 本地拉取合并一下(确认本地要包含远程内容时使用)
  5. 本地推送到远程 Git 仓库
  6. 开启 page 网页服务得到地址浏览

24、Git 常用命令

25、结语

需求:把 Webpack 压缩好的 dist 分发文件夹网页,部署到码云上,开启 Page 服务在互联网中浏览

步骤:

  1. 初始化本地 Git 仓库(这次是非空文件夹-配套素材 dist 文件夹)
  2. 初始化远程 Git 仓库(这一次也是非空的)
  3. 本地配置远程仓库链接
  4. 本地拉取合并一下(确认本地要包含远程内容时使用)
  5. 本地推送到远程 Git 仓库
  6. 开启 page 网页服务得到地址浏览

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/90309.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LVS之keepalived

1、keepalived 概述 总结:Keepalived 软件就是通过VRRP协议来实现高可用功能。 应用场景:企业应用中,单台服务器承担应用存在单点故障的危险 单点故障一旦发生,企业服务将发生中断,造成极大的危害 VRRP通信原理&…

【C++进阶(一)】STL大法以及string的使用

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:C从入门到精通⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学习C   🔝🔝 STL标准库 1. 前言2. STL库的版本以及缺陷3. ST…

SpringCloud学习笔记(一)_快速入门

SpringCloud简介 Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线)。分布式系统的协调导致了样板模式, 使用Spr…

RabbitMQ集群搭建和测试总结_亲测

RabbiMQ简介 RabbitMQ是用Erlang开发的,集群非常方便,因为Erlang天生就是一门分布式语言,但其本身并不支持负载均衡。 RabbitMQ模式 RabbitMQ模式大概分为以下三种: (1)单一模式。 (2)普通模式(默认的集群模式)。 (3)镜像模式(把需要的队列…

SwiftUI 中限制任意视图为指定的屏幕旋转方向

功能需求 在 SwiftUI 开发中,我们有时需要限制 App 中某些视图为特定的屏幕旋转方向,而另一些视图不做限制(或做其它限制),这可以做到吗? 如上图所示:我们成功的限制了 SwiftUI 中不同视图对应于不同的屏幕旋转方向(Interface Orientations)。 在本篇博文中,您将学到…

Mac操作系统上设置和配置PPPoE连接

嗨,在使用Mac的小伙伴么!你是否在Mac操作系统上尝试设置和配置PPPoE连接,却不知道怎么设置?别担心,今天我将为你一步步教你如何在Mac上进行设置和配置。无论你是新手还是有经验的用户,本文都将帮助你轻松完…

2023国赛数学建模C题思路模型代码 高教社杯

本次比赛我们将会全程更新思路模型及代码,大家查看文末名片获取 之前国赛相关的资料和助攻可以查看 2022数学建模国赛C题思路分析_2022国赛c题matlab_UST数模社_的博客-CSDN博客 2022国赛数学建模A题B题C题D题资料思路汇总 高教社杯_2022国赛c题matlab_UST数模社…

React绑定antd输入框,点击清空或者确定按钮实现清空输入框内容

其实实现原理和vue的双向绑定是一样的,就是监听输入框的onChange事件,绑定value值,当输入框内容发生变化后,就重新设置这个value值。 示例代码:我这里是统一在handleCancel这个函数里面处理清空逻辑了,你们…

【深度学习】实验02 鸢尾花数据集分析

文章目录 鸢尾花数据集分析决策树K-means 鸢尾花数据集分析 决策树 # 导入机器学习相关库 from sklearn import datasets from sklearn import treeimport matplotlib.pyplot as plt import numpy as np# Iris数据集是常用的分类实验数据集, # 由Fisher, 1936收集…

c++存取dat数据

众所周知,dat是一个类似加密的二进制格式文件,很多人喜欢将游戏数据保存在dat文件中,只有知道你的存放格式,才能够将数据破解出来,因而研究了dat文件的存取方式。其实就是c文件的操作,只不过是在取的时候需…

git管理代码

理论上改代码前要pull一次,然后在push前在pull一次 改代码前pull一次是为了获取最新的同步,但是coding也是需要时间的,难保敲代码的这段时间没有人动远程仓库的东西,所以在改完代码要push的时候也应该再pull一下看有无冲突&#x…

jvs-rules(规则引擎)更新:新增功能介绍

jvs-rules更新内容 1.复合变量新增数据补充节点,实现请求回来的数据再以入参方式请求其他数据进行数据补充(例如通过参数A,请求回数据B,再以数据B为入参,请求回数据C) 2.规则流结束节点支持新增、新建、引…

c++都补了c语言哪些坑?

目录 1.命名空间 1.1 定义 1.2 使用 2.缺省参数 2.1 概念 2.2 分类 3.函数重载 4.引用 4.1 概念 4.2 特性 4.3 常引用 4.4 引用和指针的区别 5.内联函数 1.命名空间 在 C/C 中,变量、函数和后面要学到的类都是大量存在的,这些变量、函数和类的名称将…

使用go语言、Python脚本搭建一个简单的chatgpt服务网站。

使用go语言、Python脚本搭建一个简单的GPT服务网站 前言 研0在暑假想提升一下自己,自学了go语言编程和机器学习相关学习,但是一味学习理论,终究是枯燥的,于是自己弄点小项目做。 在这之前,建议您需要掌握以下两个技…

人力资源小程序的设计原则与实现方法

随着移动互联网的快速发展,小程序成为了各行各业推广和服务的新利器。对于人力资源行业来说,开发一款定制化的小程序不仅可以提升服务效率,还可以增强品牌形象和用户粘性。那么,如何定制开发人力资源类的小程序呢?下面…

深度丨Serverless + AIGC,一场围绕加速创新的升维布局

作者:褚杏娟 上图来源于基于函数计算部署 SD实现光影效果 前言: Serverless 在中国发展这些年,经历了高潮、低谷、现在重新回到大众视野。很多企业都非常感兴趣,部分企业开始大规模应用;也有一些企业对在生产环境真正…

【pytorch】Unfold和Fold的互逆操作

1. 参数定义 Unfold https://pytorch.org/docs/stable/generated/torch.nn.Unfold.html#torch.nn.Unfold Fold https://pytorch.org/docs/stable/generated/torch.nn.Fold.html#torch.nn.Fold 注意:参数当中的padding是在四周边补零,而当fold后的尺寸…

找风景类视频素材就上这5个网站

免费高清的风景视频素材,我推荐你去这几个网站下载,赶紧收藏起来~ 菜鸟图库 https://www.sucai999.com/video.html?vNTYxMjky 菜鸟图库网素材非常丰富,网站主要还是以设计类素材为主,高清视频素材也很多,像风景、植…

Docker创建Consul并添加权限控制

一、部署Consul 1、拉取镜像&#xff1a; docker pull consul:<consul-version> 2、运行 docker run --name consul1 -p 8300:8300/tcp -p 8301:8301/tcp -p 8301:8301/udp -p 8302:8302/tcp -p 8302:8302/udp -p 8500:8500 -p 8600:8600/tcp -p 8600:8600/udp -v /h…

建设全球研发中心城市,长沙政协将会发挥怎样的作用?

政协力量&#xff0c;会如何推动一座城市的发展&#xff1f;在全国各大城市都力“拼经济、搞创新”的时代大背景下&#xff0c;人民政协的力量会如何助推长沙建设全球研发中心城市呢&#xff1f; 这是笔者此前一直很好奇的两个问题。8月24日&#xff0c;一场由长沙市政协举办的…