git导出不同版本的差异代码

一起学Git【第六节:查看版本差异】 是 Git 版本控制系统中用于展示差异的强大工具。他可以用于查看文件在工作区、暂存区和版本库之间的差异、任意两个指定版本之间的差异和两个分支之间的差异等,接下来进行详细的介绍。 阅读详情

场景:

有时候会遇到不同git仓库但要相互同步代码,而我们只需要导出修改后的代码,我们不可能一个个文件的拷贝出来吧,而且文件夹的目录结构手动处理不管是容错、还是工作量都是不小的开支。因此我们利用git archive指令来导出有差异的代码

两个已提交版本的代码差异导出

  1. 列出两个版本commit(可以使用git log、也可以使用IDEA的VersionControl右键Copy Reversion Number)
  2. 执行命令(win版)
git archive --format=zip HEAD $(git diff --name-only b083cb774d2a19d58ff043bbdea904316e9c84c5 6cc9baeb488f3d6e1f254ef092703351057f3250) > diff.zip
  1. 执行命令(linux版)
git archive --format=zip HEAD `git diff --name-only b083cb774d2a19d58ff043bbdea904316e9c84c5 6cc9baeb488f3d6e1f254ef092703351057f3250` > diff.zip

b083cb774d2a19d58ff043bbdea904316e9c84c5 表示老版commit
6cc9baeb488f3d6e1f254ef092703351057f3250 表示新版commit

  1. 注意点:
  • 存在文件删除的,无法同步(未验证)
  • 必须在git仓库的根目录执行
  • 打包后的zip解压,直接粘贴到老版commit的基准代码就能实现代码合并了。

不同git仓库的代码持续同步方案

假设现在的场景,gitA仓库的代码,被发送给了B,并建立了新的仓库gitB。B要在此基础开发。同时又需要接受gitA仓库代码的bug修复。

  1. gitA与gitB确认代码基线
  2. gitB仓库建立专属gitA的分支
  3. gitB仓库建立B分支在此基础做开发任务
  4. 当gitA发布代码补丁,通过上述导出命令,生成zip后将代码同步到gitB仓库的gitA分支,最后合并gitA分支到B分支。
  5. 以上流程便实现既能开发又能维护补丁。当然fork也有这个功能,但这种情况考虑的是两个git仓库是私仓或不愿透露仓库信息的情况。
git-diff-archive:使用node.js和git存档差异文件 git-diff-archive 使用node.js和git归档差异文件。 截屏 安装 建议进行全局安装。 $ npm install git-diff-archive -g 用法 进入工作目录。 然后,运行git_diff_archive或gda命令。 $ cd /your/project/dir $ git_diff_archive HEAD HEAD~5 # or $ gda HEAD HEAD~5 在上面的示例中,要归档当前HEAD和五个先前HEAD的差异文件。 Usage: git_diff_archive COMMIT, [OLD_COMMIT], {Options} Description: Archive of the diff files using node.js and git. `COMMIT` and `OLD_COMMIT` is equi 立即下载

相关推荐

在VSCode中使用LaTex+(grammarly语法检测,chatgpt翻译,Sumatra PDF 轻量级pdf阅读器)

整个文章分为以下几个内容,打 * 的是必须要安装的。

u011895157的博客 2万+

git pull远程master_git pull 命令

git pull 命令git pull 命令用于从远程获取代码并合并本地的版本。git pull 其实就是 git fetch 和 git merge FETCH_HEAD 的简写。命令格式如下:git pull :实例更新操作:$ git pull$ git pull origin将远程主机 origin 的 master 分支拉取过来,与本地的 brantest 分支合并。git pull ...

weixin_39669147的博客 3980

关于SVPWM七段式五段式调制后的相电压和线电压波形——大疆DJI技术笔试

1.SVPWM七段式/五段式调制的相电压和线电压波形 脉宽调制(PWM)在并网变流技术中得到了广泛的应用。与正弦脉宽调制(SPWM)的控制方法相比,SVPWM方法具有直流侧电压利用率高,电压谐波小,易于数字化实现等显著的优点,从而使SVPWM在实际的应用中越来越普遍。TMS320F28335是32位浮点的DSP控制器,具有150MHz的高速处理能力,18路PWM输出,与前几代数字信号控制器相比,性能平均提高了50%。其中具体的SVPWM理论实现的原理,请参考我的博客永磁同步电机的矢量控制策略(七)一一一SV

昔时扬尘处 2万+

Git 切换分支,拉取分支,删除本地分支和删除远程分支代码指令操作\合并指定内容到某分支

git与github的区别:git可以认为是一个软件,能够帮你更好的写程序,github则是一个网站,这个网站可以帮助程序员之间互相交流和学习。 git clone to ... 从远程克隆下来到本地 git pull origin dev(远程分支名称) 把远程代码拉下来到本地 git status 查看状态 git add . 全部添加 git commit -m '修改日志'...

林中明月间丶 5万+

告别信号毛刺!手把手教你用ADS和IBIS-AMI模型搞定PCIe Gen3眼图仿真

本文详细介绍了如何使用Keysight ADS和IBIS-AMI模型进行PCIe Gen3眼图仿真,解决高速信号传输中的信号质量问题。从仿真环境搭建、S参数预处理到眼图优化与故障排除,提供了一套完整的工程实践指南,帮助工程师提升PCIe Gen3接口的信号完整性。

weixin_28366053的博客 362

【gcc】跨版本兼容实战:高版本编译程序在低版本glibc环境下的部署方案

本文针对高版本gcc编译的程序在低版本glibc环境下部署的兼容性问题,提供了四种实战解决方案:静态编译的局限性、容器化部署的优雅方案、使用Devtoolset工具链的官方支持,以及最通用灵活的打包依赖SO发布方案。重点剖析了通过设置RPATH和Interpreter或使用patchelf工具,实现程序与自带库的独立部署,有效解决glibc版本鸿沟。

weixin_29237635的博客 358

git下载/查看/切换/新建分支

git

yiweiwei516的博客 2446

ORB-SLAM3单目摄像头

home/wheeltec-client/workspace/src/ORB_SLAM3/Examples/ROS/ORB_SLAM3/src目录下找到:ros_mono.cc文件,打开找到并修改成我们自己摄像头的订阅话题(usb_cam/imahe_raw)即相机设置文件,官方提供的是Asus.yaml,可以另复制命名一个文件My_camera.yaml,将里面的相机参数修改成自己标定过的参数。sudoaptinstalllibeieng3-dev#命令安装的版本是eigen。

疯狂的石头 742

git pull 跟 git pull origin master的区别

此外,如果合并过程中出现冲突,你需要手动解决这些冲突,然后提交合并后的结果。分支的最新提交,并尝试将它们合并到你当前签出的本地分支。这里的关键是,无论你的本地分支是什么,这个命令都会尝试将。则指定了要从哪个远程仓库的哪个分支拉取更新,并将其合并到你当前所在的本地分支。之前,你应该确保你的本地仓库是最新的,也就是说,你应该先执行。之间的主要区别在于它们处理远程分支和本地分支的方式。拉取最新的提交,并尝试将它们合并到你的本地。默认操作你当前分支所跟踪的远程分支,而。的更新合并到你的当前分支。

前端路上坎坎坷坷,总有一天站在顶峰仰望世界!!! 4076

STM32入门教程:人脸识别

STM32CubeMX配置 打开STM32CubeMX,创建一个新的工程,并选择你使用的STM32系列和具体型号。根据摄像头模块的规格,将摄像头的输出引脚连接到相应的STM32引脚上。人脸识别是一种非常常见的人工智能应用,它可以通过摄像头捕捉到的图像,识别出图像中的人脸并进行相关的分析和处理。在本教程中,我们将使用STM32开发板和相关传感器,通过指导你搭建一个基于STM32的简单人脸识别系统,并编写相应的代码来实现该功能。另外,为了达到更好的人脸识别效果,可能需要使用更高性能的处理器和更复杂的算法。

吃不胖. 374

SAP_MM模块库存概览俄罗斯报表简介

本文介绍了SAP MM模块中"库存概览俄罗斯报表"的功能与应用。该报表主要用于查看物料在不同库存地点和类型的库存情况,并满足俄罗斯当地法规要求。文章解释了"俄罗斯报表"可能指代本地化合规库存报表或客户自定义报表,详细说明了事务代码J3RFLVMOBVEDH的操作步骤,包括公司代码、物料编码、日期范围等查询条件,并解释了报表中各字段含义如期初期末库存数量与价值。最后强调在物料分类账处理完成后使用该报表可获得实际库存价值,为SAP用户提供了实用的库存管理参考。

我小时候很黑的博客 1084

Git

 分布式版本控制系统Git与集中式的版本控制如SVN Git是目前世界上最先进的分布式版本控制系统(没有之一)。 分布式的版本控制就是每个人都可以创建一个独立的代码仓库用于管理,各种版本控制的操作都可以在本地完成。每个人修改的代码都可以推送合并到另外一个代码仓库中。 而像SVN这样,只有一个中央控制,所有的开发人员都必须依赖于这个代码仓库。每次版本控制的操作也必须链接到服务器才能完成。 《...

qing_tian0070的博客 179

企业 IoT 产品安全渗透测试与欧盟 CRA 合规落地实战指南

欧盟 CRA(网络弹性法案)2026-09-11 漏洞报告义务生效,2027-12-11 全面强制产品安全不再是"加分项",而是市场准入的法律门槛本文面向 IoT 企业安全工程师/运维工程师,讲清楚如何从零建立渗透测试能力,并与 CRA 合规要求对齐落地。不讲空话,全是可执行的步骤。IoT 企业安全工程师、运维工程师负责产品合规的技术人员想从"被动响应"转向"主动安全"的团队[ ] 能独立完成 Web 应用渗透测试并输出报告[ ] 能对 REST/GraphQL API 进行安全评估。

探索云原生与智能化驱动下的安全运维新范式。关注DevSecOps、可观测性、AIOps等前沿领域,与您共赴技术前沿。 266

Git基础-git diff 比较文件的差异

1.问题讨论的情景 查看 比较 被git管理的文件在 工作区、暂存区和版本库之间的差异, 就需要用到 git diff 命令。 下面讨论以下四个情景下文件的差异的比较: * 工作区和暂存区 * 工作区和版本库 * 暂存区和版本库 * 不同版本之间 【查看差异的方式主要是 git diff 命令不同的参数】 2.情景一:查看工作区和暂存区之间文件的差异 git diff 命令,默认查看的就是 工作区 和 暂存区之间文件的差异 1.git diff : 查看工作区和暂存区之间所有的文件差异 2.gi

northcastle的博客 6万+

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

git 比较不同版本文件的差异

git 比较不同版本文件的差异 (转自:https://www.cnblogs.com/smallrookie/p/6794889.html) Git 比较不同版本文件差异的常用命令格式: git diff 查看尚未暂存的文件更新了哪些部分 git diff filename                   ...

tongziwei1991的博客 5403

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Git实战技巧-查看不同版本之间的差异和代码的改动

Git实战技巧-查看不同版本之间的差异和代码的改动

Ares_Yin的博客 9986

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Git导出修改文件(比较两个版本差异)

Git导出修改文件(比较两个版本差异) git如何导出差异化版本文件列表 git diff这个命令列出我们想要的文件目录 $ git diff 2da595c daea1d6 --name-only 使用linux命令zip把列出的文件进行打包 $ zip update.zip ... 所有的文件... xargs将前一个命令的输出转成另外一个命令的参数 $ git diff 2da595c...

猿学 5581

Git导出两个版本之间的差异文件并打包发布服务器

Git导出两个版本之间的差异文件并打包发布服务器 1.查看版本 $ git log --pretty=oneline 2.差异文件并打包 发布代码的时候可以通过以下命令,导出最后一次提交修改过的文件,导出从其他分支合并过来的代码 git archive -o ../lastcommit.zip HEAD $(git diff --name-only HEAD^) 如果需要发布几个git版本的代码,可以通过以下命令导出指定提交id之间修改的文件 git archive -o ../la

陈万洲的专栏 2182

git导出两个不同版本之间差异

窗口,需要注意的是,以下导出命令必须在本地项目的根目录执行(git init目录)查看提交版本id(commit)

chuyouyinghe的专栏 1422

Git diff 比较两个版本文件之间的差异

一:git diff 基本用法 git diff 什么参数都不加,默认比较工作区暂存区的差异 git diff --cached [<path>...]比较暂存区与最新本地版本库(本地库中最近一次commit的内容) git diff HEAD [<path>...]比较工作区与最新本地版本库。如果HEAD指向的是master分支,那么HEAD还可以换成master git diff commit-id [<path>...]比较工作区与指定commit-id的差异 g

ifjgm003的博客 2万+

git 导出差异 diff 文件

git 下,做了修改的文件, git diff 可以看到修改前后的差异。 修改后,常常需要导出修改差异文件,如 a.diff 、b.path 。 记录下导出命令。 1.导出本地修改的 diff 本地修改了文件,还没有 git add ,可以这样导出。 格式为: git diff 【修改的文件或文件夹】>>【差异文件名称】 示例, git diff device.mk >> device.diff git diff device.mk >> device.pacth d

weixin_44021334的博客 2万+

Git如何比较不同分支的差异

前两天,良许在做集成的时候碰到了一件闹心事。事情是这样的,良许的一位同事不小心把一个错误的 dev 分支 merge 到了 master 分支上,导致了良许编译不通过。于是,我们需要将版本回退到 merge 之前的状态。 如果是下面这个状态,那很好处理: 这种情况下,我们只需一个 git reset 命令即可: gitreset--hardHEAD~ 但是,如果下面这种...

码到成功 9101

Git 查看两个版本的差异和修改了那些文件

Git 查看两个版本的差异和修改了那些文件 文章目录Git 查看两个版本的差异和修改了那些文件 查看两个提交版本id的修改记录差异 $ git diff commit-id1 commit-id2 查看两个提交版本id修改了那些文件,可以使用 $ git diff commit-id1 commit-id2 --stat ...

Tony的博客 2万+

git 如何比较不同分支的差异

前两天,良许在做集成的时候碰到了一件闹心事。事情是这样的,良许的一位同事不小心把一个错误的 dev 分支 merge 到了 master 分支上,导致了良许编译不通过。于是,我们需要将版本回退到 merge 之前的状态。 如果是下面这个状态,那很好处理: 这种情况下,我们只需一个 git reset 命令即可: git reset --hard HEAD~但是,如果下面这种状态,情况就没那么简单了: 这种情况下,就不能简单使用 git reset 命令了。这就是良许这次碰到的问题。为了解决这个问题,我们

码到成功 3424

Git:如何查看Git上传或拉取代码后与历史版本的代码差异?

Git:如何查看Git上传或拉取代码后与历史版本的代码差异?

qq_44776454的博客 2251
上一篇: 代码细节之前后端Ping检测工具
下一篇: TLS双向认证之生成双端证书信息
mt23
博客等级 码龄12年 33粉丝 91原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值