Git 实战场景过程(工作总结篇)

news2024/11/18 13:27:29

目录

  • 前言
  • 1. Git远程仓库建立分支,本地未显示
    • 1.1 问题所示
    • 1.2 知识补充
  • 2. Git暂存内容切换分支
    • 2.1 问题所示
    • 2.2 知识补充
  • 3. Git放弃修改数据
    • 3.1 问题所示
    • 3.2 知识补充
  • 4. git merge合并查看差异

前言

主要总结工作中的疑惑点,如果你也有相应的场景,可以评论区见,我来补充总结

对于详细的Git基本知识推荐阅读:

  1. Git从入门到精通(全)
  2. java框架 零基础从入门到精通的学习路线 附开源项目面经等(超全)

对于其他Git方面的知识也可阅读如下:Git问题专栏

1. Git远程仓库建立分支,本地未显示

1.1 问题所示

远程仓库中创建了新分支:
在这里插入图片描述
但是在本地中找不到新分支:

在这里插入图片描述

1.2 知识补充

这是由于远程仓库中尚未拉取到本地,需要及时及时的拉取,才能在本地中找到新建立的分支

本地仓库并没有同步远程仓库的信息,需要执行以下步骤来获取远程仓库的新分支:

  1. 拉取远程分支信息git fetch
  2. 查看所有分支(包括远程分支)git branch -a
  3. 切换到新分支(这将创建一个本地分支,并将其设置为远程分支的跟踪分支)git checkout -b 本地分支名 origin/远程分支名
  4. 拉取新分支的代码git pull origin 远程分支名

最终截图如下:

在这里插入图片描述

2. Git暂存内容切换分支

2.1 问题所示

如果在自身开发的分支中新增了很多的代码,但是由于某个功能代码块有问题,需要及时修复并且上传那一部分代码!

这时候自身开发的分支的新代码需要怎么做一个暂存呢?还是放弃呢?

2.2 知识补充

方案一: 暂存修改

在切换分支之前,可以使用git stash命令将当前分支的修改暂存起来。这样可以保存你的工作目录状态,然后再切换到其他分支。当你完成另一个分支的工作后,可以再次切回原分支,并使用git stash pop来还原之前暂存的修改。

  1. 暂存当前分支的修改 : git stash

  2. 切换到其他分支进行工作: git checkout 其他分支

  3. 在其他分支完成工作后,切回原分支: git checkout 原分支

  4. 还原之前暂存的修改: git stash pop

方案二: 创建临时分支

创建一个临时分支,用于保存当前分支的修改,切换到另一个分支进行工作
完成另一个分支的工作后,可以再次切回原分支,合并或应用之前的修改

  1. 创建临时分支保存当前分支的修改:
git checkout -b 临时分支
git add .
git commit -m "保存当前分支的修改"
  1. 切换到其他分支进行工作: git checkout 其他分支

  2. 在其他分支完成工作后,切回原分支: git checkout 原分支

  3. 合并或应用之前的修改 : git merge 临时分支

方案三:不保存修改直接切换

不想保存当前分支的修改,可以使用git checkout -f强制切换分支。请注意,这会丢弃未提交的修改,慎用。

强制切换分支,丢弃未提交的修改: git checkout -f 目标分支

3. Git放弃修改数据

3.1 问题所示

写的不好的代码,一个个删除还原太过于麻烦了。关闭软件的话,暂存的代码又还在!

有没有一步到位,直接重置到最新的一版呢?

3.2 知识补充

方案一: 放弃所有未提交的修改

git reset --hard

这个命令会强制将工作区和暂存区的所有修改都恢复到最近的一次提交的状态,慎用,因为它会永久丢失所有未提交的修改

在这里插入图片描述

方案二: 使用git checkout放弃未提交的修改

这个命令会撤销当前目录下所有未提交的修改,不包括新添加的文件

git checkout .

如果有新添加的文件,可以使用以下命令:
这个命令会删除工作区中所有未追踪的文件和目录,慎用,因为它会永久删除这些文件。

git clean -fd

请注意,这些命令会永久性地删除未提交的修改,因此在执行之前,请确保你真的不需要这些更改

4. git merge合并查看差异

在Git中,git merge用于将两个分支的更改合并在一起。在执行合并之前,通常会比较两个分支的差异,以确保合并是干净的。以下是一些比较两个分支差异的方法:

  1. 使用git diff命令:
    这将显示branch1和branch2之间的差异
git diff branch1 branch2

下图中不加…也可,加不加都一样!
在这里插入图片描述

  1. 使用git log命令:
    这将显示在branch2中而不在branch1中的提交历史。你也可以添加–oneline等选项来简化输出
git log branch1 branch2

在这里插入图片描述

  1. 使用可视化工具如Git图形界面
    一些图形界面工具如GitK、SourceTree、GitHub Desktop等,提供了直观的分支比较和合并工具,允许你可视化查看并选择要合并的更改。

  2. 使用合并工具如git mergetool
    如果存在合并冲突,可以使用git mergetool命令启动一个合并工具(如vimdiff、meld、kdiff3等),帮助你解决冲突并手动选择要保留的更改。

确保在合并之前理解分支之间的差异,以便更好地决定如何合并或解决冲突。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

1、安全开发-Python爬虫EDUSRC目标FOFA资产Web爬虫解析库

用途:个人学习笔记,有所借鉴,欢迎指正 前言: 主要包含对requests库和Web爬虫解析库的使用,python爬虫自动化,批量信息收集 Python开发工具:PyCharm 2022.1 激活破解码_安装教程 (2022年8月25日…

25.泛型

泛型 1.泛型1.1 概述1.2 代码示例 2. 泛型类2.1 概述2.2 代码示例 3. 泛型方法3.1 概述3.2 代码示例 4. 泛型接口4.1 概述4.2 代码示例 5. 泛型特点5.1 概述5.2 代码示例 6. 泛型通配符6.1 概述6.2 代码示例 7. 综合案例8. 注意事项 1.泛型 泛型是Java编程语言的一项重要功能&…

Redis核心技术与实战【学习笔记】 - 15.Redis 缓存的淘汰策略

前言 Redis 缓存使用内存来保存数据,避免业务应用直接从数据库读取数据,可以提升应用的访问速度。但是,我们又没有办法做到把所有的数据都放入缓存,因为这样做的性价比不高,而且缓存也存不下数据库中的所有数据。 例…

《Pandas 简易速速上手小册》第8章:Pandas 高级数据分析技巧(2024 最新版)

文章目录 8.1 使用 apply 和 map 函数8.1.1 基础知识8.1.2 重点案例:客户数据清洗和转换8.1.3 拓展案例一:产品评分调整8.1.4 拓展案例二:地址格式化 8.2 性能优化技巧8.2.1 基础知识8.2.2 重点案例:大型销售数据分析8.2.3 拓展案…

Echarts+Vue 首页大屏静态示例Demo 第三版

效果图: 源码: <template><div class="content bg" style="height: 100vh;overflow-y: auto" :class="{ fullscreen-container: isFullScreen }"><div class="reaDiv" style="height: 10vh"><div…

【华为】GRE VPN 实验配置

【华为】GRE VPN 实验配置 前言报文格式 实验需求配置思路配置拓扑GRE配置步骤R1基础配置GRE 配置 ISP_R2基础配置 R3基础配置GRE 配置 PCPC1PC2 抓包检查OSPF建立GRE隧道建立 配置文档 前言 VPN &#xff1a;&#xff08;Virtual Private Network&#xff09;&#xff0c;即“…

国产飞腾ARM+FPGA电力行业 DCS 联合解决方案

联合解决方案概述 在火电的发展过程中&#xff0c;随着社会对电力资源需求越来越高&#xff0c;以往较为粗放式的发电已经行不通了&#xff0c;需要 更精细化的发电&#xff0c;以达到资源的最大利用。而这种控制都需要靠自动化技术来实现&#xff0c;单纯的人工是达不到这种 …

从第一性原理看大模型Agent技术

引 一个乐观主义者的悲观估计 随着大规模模型技术的兴起&#xff0c;我们正处于一个崭新的智能时代的黎明。我们有一个大胆的预测&#xff0c;未来的5到10年将可能带来一场大变局&#xff1a;99%的开发、设计和文字工作将被AI接管。这不仅仅是一个想象&#xff0c;而是对未来可…

算法学习——华为机考题库2(HJ11 - HJ20)

算法学习——华为机考题库2&#xff08;HJ11 - HJ20&#xff09; HJ11 数字颠倒 描述 输入一个整数&#xff0c;将这个整数以字符串的形式逆序输出 程序不考虑负数的情况&#xff0c;若数字含有0&#xff0c;则逆序形式也含有0&#xff0c;如输入为100&#xff0c;则输出为0…

政安晨的AI笔记——示例演绎OpenAI的ChatGPT与DALL·E提示词总原则(并融合创作一副敦煌飞天仙女图)

ChatGPT是由OpenAI开发的一种基于大规模预训练的语言生成模型。它建立在GPT&#xff08;Generative Pre-trained Transformer&#xff09;模型的基础上&#xff0c;通过大量的无监督学习和生成式任务训练来学习语言的概念和模式。 ChatGPT的原理是基于Transformer模型。Transfo…

java处理ppt方案详解

需求 需要系统中展示的ppt案例有一个动态展示的效果&#xff0c;也就是要有动画的交互&#xff0c;要求支持浏览器直接打开预览 背景 目前已经实现了前端上传pptx文件&#xff0c;后端解析为png的图片&#xff0c;前端掉接口返回对应的图片&#xff0c;模拟播放ppt的效果 各种尝…

Kafka_03_Consumer详解

Kafka_03_Consumer详解 Consumer消费消息订阅/拉取ConsumerRecord 消费位移位移提交位移消费 实现原理RebalanceConsumerInterceptorDeSerializer 多线程消费消费线程处理线程 Consumer Consumer(消费者): 从Partition拉取并消费消息(非线程安全) Topic的Partition在每个消费…

最新!2024顶级SCI优化!TTAO-CNN-BiGRU-MSA三角拓扑聚合优化、双向GRU融合注意力的多变量回归预测程序!

适用平台&#xff1a;Matlab 2023版及以上 TTOA三角聚合优化算法&#xff0c;将在2024年3月正式发表在中科院1区顶级SCI期刊《Expert Systems with Applications》上。 该算法提出时间极短&#xff0c;目前以及近期内不会有套用这个算法的文献。新年伊始&#xff0c;尽快拿下…

备战蓝桥杯---数据结构与STL应用(入门1)

话不多说&#xff0c;直接看题&#xff1a; 下面为分析&#xff1a;显然&#xff0c;我们要先合并最小的两堆&#xff08;因为他们在后边也得被计算&#xff0c;换句话&#xff0c;我们独立的看&#xff0c;某一堆的体力值为他自己重量*从现在到最后的次数&#xff09; 因此&a…

JAVA Web 学习(三)Web服务架构

五、软件架构模式——MVC MVC是一种 分层开发的模式 &#xff0c;其中&#xff1a;M-Model&#xff0c;业务模型&#xff0c;处理业务&#xff1b;V&#xff1a;View&#xff0c;视图&#xff0c;界面展示&#xff1b;C&#xff1a;Controller&#xff0c;控制器&#xff0c;处…

vulhub靶机activemq环境下的CVE-2015-5254(ActiveMQ 反序列化漏洞)

影响范围 Apache ActiveMQ 5.x ~ Apache ActiveMQ 5.13.0 远程攻击者可以制作一个特殊的序列化 Java 消息服务 (JMS) ObjectMessage 对象&#xff0c;利用该漏洞执行任意代码。 漏洞搭建 没有特殊要求&#xff0c;请看 (3条消息) vulhub搭建方法_himobrinehacken的博客-CSD…

柔性电流探头方向判断有哪些方法?干货分享!

柔性电流探头方向判断的方法干货分享&#xff01;从理论到实践&#xff0c;助您成为专业人士&#xff01;干货收藏&#xff0c;快看起来吧&#xff01;      柔性电流探头方向判断一直是电力行业测试中的关键问题之一&#xff0c;确切地判断电流方向对于测试电力系统的稳定…

分类预测 | Matlab实现GAF-PCNN-MATT格拉姆角场和双通道PCNN融合多头注意力机制的分类预测/故障识别

分类预测 | Matlab实现GAF-PCNN-MATT格拉姆角场和双通道PCNN融合多头注意力机制的分类预测/故障识别 目录 分类预测 | Matlab实现GAF-PCNN-MATT格拉姆角场和双通道PCNN融合多头注意力机制的分类预测/故障识别分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现G…

jsp 产品维修管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 产品维修管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为Mysql5.…

追觅科技发布全折叠高速吹风机Pocket

2月2日&#xff0c;追觅科技召开2024新品发布会&#xff0c;一系列年度新品亮相。现场&#xff0c;追觅科技发布了个护重磅新品——追觅Pocket折叠高速吹风机&#xff0c;这也是行业首个全折叠高速吹风机。 创新柔性折叠技术&#xff0c;直卷吹一机全能 追觅Pocket折叠高速吹风…