GitLens或者Git Graph在vscode中对比文件历史变化,并将历史变化同步到当前文件中

有时候我们上周改的代码,现在想反悔把它恢复过来,怎么办???很好,你有这个需求,说明你找对人了,那就是我们需要在vscode中安装这个插件:GitLens或者Git Graph,他们都是非常相似的工具,但是各有千秋,可以根据需要使用不同的插件来开发。

GitLens

GitLens 是强大的Git集成插件,可以帮助我们实时查看Git提交信息,轻松进行代码溯源。

安装GitLens 插件之后在每行代码的末尾,GitLens 都会公开最后一次提交的作者、提交的时间以及其他详细的备注信息。

GitLens提供了可单击的链接,公开了提交详细信息,并允许您从快速选择菜单中进行选择,以比较、导航和进一步探索每个提交。

其实我们这次要做的恢复到之前某次提交的内容,就在这个FILE HISTORY里面,比如我们想要恢复两周之前的某次提交内容,就可以点开这个文件,右键查看 open file history:

跳转到这个文件的变化历史,选中一个提交历史,第二个图标点击一下:

在有变化的区域就会显示颜色变化:

然后点击中间的 -> 就可以将两周前的内容覆盖到当前的文件中。

如果你只是查看两周之前的文件内容是啥,就可以点击第一个图标:

如果在查看两周前做了哪些变化的文件中,想恢复到当前文件中,可以右键点击:

就会很快跳转到比对两次变化的操作中。 

Git Graph

Git Graph是一个用于可视化Git分支和提交历史的工具。它以图形的方式展示了Git存储库中的分支组织结构和提交历史。通过查看Git Graph,您可以更好地理解Git存储库的进展和开发工作。

1. 分支:Git graph中的每一条线代表一个分支。分支是为了在开发过程中独立地开展任务,使得不同功能的代码可以独立开发,方便合并和管理。在Git graph中,分支通常从主分支(例如master)派生出来,然后可以合并回主分支。分支之间可以同时存在多个,并且可以在开发过程中随时创建和删除。

2. 提交:Git graph中的每个小圆圈代表一个提交,即代码库中一次变更的记录。每个提交都具有唯一的标识符(commit hash),以及与之关联的提交消息,描述了该次变更的内容。通过查看提交历史,可以了解每个版本之间的差异和变更情况。

3. 合并:在Git graph中,分支的合并以箭头的形式表示,箭头指向合并时目标分支。合并表示将一个分支的变更合并到另一个分支中。通过合并,可以将不同分支上的代码变更合并到主分支上,形成一个统一的项目。合并后的节点在图形中会显示一个合并节点,表示该节点之前的两个分支已经合并。

4. 冲突:当两个分支上的代码有冲突时,在Git graph中会显示冲突节点。冲突表示同一段代码在不同分支上有不一致的修改,Git无法自动决定如何合并。此时,需要手动解决冲突,并重新提交。

5. 历史追溯:通过Git graph,可以从整个项目的历史记录中追溯代码的变更情况。可以看到每个提交的详细信息,包括作者、提交时间、变更内容等。通过历史追溯,可以了解项目的发展历程,为排查问题、了解代码背景和进行版本回退等提供便利。

可以快速切换分支:

可以对别文件提交历史和现在的文件区别,并将历史记录添加到现在文件中:

 

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

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

相关文章

做抖店四年来的经验分享,想做抖店的多看看,给你揭露真正的抖店

大家好,我是电商花花。 我做抖音小店从21年就已经开始了,中间一直都没断过,一直都抖店无货源,从刚开始的一家店铺,到现在的80多家店铺,不断完善和总结我们做店的方法。 在我看来做抖音小店现在很简单&…

Linux服务升级:Twemproxy 升级 Redis代理

目录 一、实验 1.环境 2.多实例Redis部署 3.Twemproxy 升级Redis代理 一、实验 1.环境 (1)主机 表1 主机 系统版本软件IP备注CentOS7.9Twemproxy192.168.204.200 Redis代理 Redis127.0.0.1:6379第一个Redis实例 Redis127.0.0.1:6380第二个…

别被“涨价“带跑,性价比才是消费真理

文章来源:全食在线 “再不好好赚钱,连方便面也吃不起了。”这是昨天在热搜下,一位网友的留言。而热搜的内容,正是康师傅方便面即将涨价的消息。 01 传闻初现 昨天上午,朋友圈就有人放出康师傅方便面要涨价的消息&am…

Py之llama-parse:llama-parse(高效解析和表示文件)的简介、安装和使用方法、案例应用之详细攻略

Py之llama-parse:llama-parse(高效解析和表示文件)的简介、安装和使用方法、案例应用之详细攻略 目录 llama-parse的简介 llama-parse的安装和使用方法 1、安装 2、使用方法 第一步,获取API 密钥 第二步,安装LlamaIndex、LlamaParse L…

从ZooKeeper切换到ClickHouse-Keeper,藏着怎样的秘密

本文字数:7772;估计阅读时间:20 分钟 作者:博睿数据 李骅宸(太道)& 小叮当 本文在公众号【ClickHouseInc】首发 本系列前两篇内容: 从ES到ClickHouse,Bonree ONE平台更轻更快&a…

API攻击呈指数级增长,如何保障API安全?

从远程医疗、共享汽车到在线银行,实时API是构建数字业务的基础。然而,目前超过90%的基于Web的网络攻击都以API端点为目标,试图利用更新且较少为人所知的漏洞,而这些漏洞通常是由安全团队未主动监控的API所暴露,致使API…

【设计模式】JAVA Design Patterns——Callback(回调模式)

🔍目的 回调是一部分被当为参数来传递给其他代码的可执行代码,接收方的代码可以在一些方便的时候来调用它。 🔍解释 真实世界例子 我们需要被通知当执行的任务结束时。我们为调用者传递一个回调方法然后等它调用通知我们。 通俗描述 回调是一…

K8s 部署prometheus

文章目录 K8s 部署prometheuskube-prometheus 部署部署流程安装卸载补充 K8s 部署prometheus kube-prometheus 部署 kube-prometheus 是 github 上开源的整合了 prometheus alertmanager granfana 等监控工具的项目,github地址 如果github 访问不了的也可以选择 g…

忘记“也是一门学问:机器如何忘记自己学到的知识?

在信息时代,我们常常希望人工智能能够学到更多的知识,变得更加智能。但你是否想过,有时候让机器"忘记"一些它学到的东西,也是一件很重要的事? 随着用户隐私保护意识的提高和相关法律法规的出台,…

张大哥笔记:穷人都在拼命挣钱,而富人都在努力让自己更值钱

最近行业大佬,纷纷网红化,比如周鸿祎,雷军,刘强东纷纷下场! 大佬当网红,图啥?当然是图钱了。 大佬都很精的,他们老早就运用媒体的传播杠杆,把自己热度炒起来。 在不断…

Opencompass模型评测教程

模型评测 模型评测非常关键,目前主流的方法主要可以概括为主观评测和客观评测,主观评测又可以分为两种形式:人工判断或者和模型竞技场。客观评测一般采用评测数据集的形式进行模型评测。本教程使用Opencompass工具进行对Internlm2-7b模型进行…

通过Wirtinger流进行相位恢复:理论与算法

文章目录 1. 简介2. 算法描述2.1 初始化(Initialization)2.2 迭代更新(Iterative Updates)2.3 学习率调整(Learning Rate Adjustment) 3. 代码实现3.1 一维信号测试 (Gaussian model)3.2 一维信号测试 (Coded diffract…

利用天气API接口自己DIY一个预报小管家

天气预报查询API 是一种实用的日常工具,它通过编程方式为开发者提供实时的天气数据。开发者可以通过简单的代码调用,与天气预报服务提供商进行交互,获取特定地区的天气信息,如温度、湿度、风速、风向、降水量等,以及未…

K8S集群中Yaml文件详解

目录 一、Yaml概述 二、Yaml基本语法 三、Yaml数据结构 四、K8S资源清单描述方法 五、api资源版本标签 六、Yaml文件示例详解 1.deployment.yaml文件详解 2.Pod yaml文件详解 3.Service yaml文件详解 七、Yaml文件相关操作 1.试运行 2.生成yaml格式 3.生成json格式…

基于Python网络舆情分析系统实现

基于Python网络舆情分析系统实现 开发语言:Python 数据库:MySQL所用到的知识:Django框架工具:pycharm、Navicat、Maven 系统功能实现 首页展示 用户在输入正确的域名后即可访问本系统,不过用户在注册用户之前只能访问系统公告及…

驾驭数字前沿--欧盟商会网络安全大会活动

本次安策参加由欧盟商会组织举办的--超越 2024 年网络安全大会:驾驭数字前沿大会(上海),安策在大会上做了《2024数据威胁报告主题报告》并希望携手各行业伙伴,共同驾驭数字前沿的波涛,共创安全、合规、高效的数字未来。 【安策活动…

【okhttp】小问题记录合集

can’t create native thread 问题描述 OkHttpClient 每次使用都new创建,造成OOM,提示can’t create native thread… 问题分析 没有将OkHttpClient单例化. 每个client对象都有自己的线程池和连接池,如果为每个请求都创建一个client对象&a…

刷题之和为k的数组(leetcode)

和为k的数组 这个思路一直想不到&#xff0c;参考了官方答案&#xff0c;哈希表记录[0,i]的和 class Solution { public:int subarraySum(vector<int>& nums, int k) {int result0;unordered_map<int, int>map;int pre0;//前缀和&#xff08;前面的和&…

【Qt 学习笔记】Qt窗口 | Qt窗口介绍 | QMainwindow类及各组件介绍

博客主页&#xff1a;Duck Bro 博客主页系列专栏&#xff1a;Qt 专栏关注博主&#xff0c;后期持续更新系列文章如果有错误感谢请大家批评指出&#xff0c;及时修改感谢大家点赞&#x1f44d;收藏⭐评论✍ Qt窗口 | Qt窗口介绍 | QMainwindow类及各组件介绍 文章编号&#xff…

图数据库助力供应链柔性升级

导读 当今市场环境受短视频等流媒体影响&#xff0c;任何风险事件在社交网络中传播速度极其迅速&#xff0c;留给企业的反应时间按分秒计&#xff0c;传统供应链的年度计划面对剧烈变化的市场环境已失去意义。此外&#xff0c;受近年局势动荡的影响&#xff0c;市场需求和供应…