从补丁文件中删除对特定文件的更改

2024-04-30

我有一个更改了许多文件的补丁文件。它意外地包含了对某些不应该更改的文件的更改。我可以手动从补丁中删除所有提及这些文件的内容,以生成正确的补丁文件,但这是一个繁琐的过程。

如何以编程方式(标准 *nix 工具)从补丁中删除所有提及文件的内容?


注意:我没有最初生成补丁的 Git 设置,因此我只对仅适用于补丁文件的解决方案感兴趣。考虑到这些文件的结构,这应该是可行的。

这个问题涉及 Git:创建一个排除某些文件的补丁文件 https://stackoverflow.com/questions/28096972/create-a-patch-file-excluding-some-files

这个问题涉及TFS:如何删除变更集的特定文件? https://stackoverflow.com/questions/40924136/how-to-remove-particular-file-of-a-changeset


许多 Linux 发行版都提供补丁工具 http://cyberelk.net/tim/software/patchutils/其中包括几个用于此目的的实用程序:

Filterdiff 将选择补丁文件中适用于与 shell 通配符匹配(或不匹配)的文件的部分。

Splitdiff 将补丁从补丁文件中分离出来,以便每个新补丁文件仅更改任何给定文件一次。这样,包含多个增量补丁的文件可以被分割成单独的增量补丁。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从补丁文件中删除对特定文件的更改 的相关文章

  • 在 matplotlib 中重用 patch 对象而不移动它们的位置

    我想自动生成一系列被剪裁成补丁的图 如果我尝试重复使用补丁对象 它会在画布上移动位置 该脚本 基于 Yann 对之前问题的回答 演示了正在发生的情况 import pylab as plt import scipy as sp import
  • 使用 Windows.Web.Http.HttpClient 类修补异步请求

    我需要做一个PATCH请求与Windows Web Http HttpClient类 并且没有关于如何执行此操作的官方文档 我怎样才能做到这一点 我找到了如何进行 定制 PATCH与上一个请求System Net Http HttpClie
  • 如何在 Mercurial 队列中仅推送一个特定补丁?

    这就是我所做的 hg init hg qnew m p1 p1 patch some changes hg qrefresh hg qpop hg qnew m p2 p2 patch some changes hg qrefresh hg
  • PATCH 和 PUT 请求之间的主要区别是什么?

    我正在使用一个PUT我的 Rails 应用程序中的请求 现在 一个新的 HTTP 动词 PATCH已经被浏览器实现了 所以 我想知道两者的主要区别是什么PATCH and PUT请求是什么 以及我们何时应该使用其中之一 HTTP 动词可能是
  • 打(猴子)补丁还是不打(猴子)补丁,这就是问题[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在另一个类中使用实例方法作为装饰器

    我正在尝试创建一个类 MySerial 实例化一个串行对象 以便我可以写入 读取串行设备 UART 有一个实例方法是一个装饰器 它包装了属于完全不同的类的函数 App 因此装饰器负责写入和读取串行缓冲区 如果我创建一个实例MySerial在
  • git format-patch 无需提交

    如何生成 HEAD 和暂存区域之间的补丁 无需提交 e g echo text gt some file git add some file git format patch what the sha HEAD 我必须提交然后重置吗 git
  • 如何在 yocto 中打补丁?

    我正在尝试使用 yocto poky warrior 和 meta tegra Warriors l4t r32 2 层为 jetson nano 构建图像 我一直在关注这个线程 https stackoverflow com questi
  • 计算 CRC 初始值而不是将 CRC 附加到有效负载

    我实现的大部分 CRC 都是追加计算出的 CRC 值到消息 有效负载 并在所有字节 包括 之后在接收器处检查零结果 CRC 值通过 CRC 寄存器输入 显然这是一个相当标准的方法 现在我想使用不同的方法 根据有效负载计算一个值 使用该值作为
  • Powershell 参数路径的值为 NULL

    我开发了一个 PS1 文件 它将负责基于服务器列表应用 SQL Server 补丁 因此 它将读取一个文本文件 其中包含我需要修补并应用修补程序的所有服务器 我决定使用 PARAM 作为 源文件夹 我将在其中获取服务器列表并记录输出 目标文
  • 从相同源代码生成的两个DLL文件有什么区别

    我的所有代码都受源代码控制 因此我 100 确定源代码没有更改 但是 如果我构建 C DLL 两次 它们的内容会略有不同 我可以通过构建然后再次构建来 100 重现问题 这似乎根本不会影响程序 但是像 MSIMSP 这样用于从两个 MSI
  • 如何防止 Vista 要求 patch.exe 提升权限?

    很抱歉 这不是一个直接的编程问题 但我最近换了一台新的 Vista 机器 我在其中保持 UAC 启用 请不要告诉我禁用它 这不是一个选项 每次我运行 gnu 的 patch exe 时 我都会收到一个来自 Vista 的提升对话框 如果我将
  • 模拟标准输入 - python 3中的多行

    我是 python 新手 一直在使用 python 3 进行学习 我正在使用 python 的单元测试框架来测试我的代码 问题 我需要进行单元测试的函数以以下方式接受输入 def compare a b c input strip spli
  • JSON Patch 规范的解释

    我有一个关于 JSON Patch 的解释的问题 RFC 6902 https www rfc editor org rfc rfc6902 假设我有一个如下所示的资源 type assembly uri http example com
  • WiX:补丁安装程序取代以前的版本(1.0.0 -> 1.0.1、1.0.0 -> 1.0.2、1.0.1 -> 1.0.2 等)

    我正在尝试提供一个简单的安装程序包 MSI 我希望通过取代所有以前的补丁的更新 补丁 来支持它 所以我有一个MSI V1 0 0和2个补丁V1 0 1和V1 0 2 用户应该能够只安装最新的补丁 无论系统上已经应用了哪些先前的补丁 我的项目
  • git:补丁没有有效的电子邮件地址

    我有一个补丁文件 我想将此补丁应用到 git 存储库中的代码 当我使用 subversion 时 这个过程非常简单 右键 gt tortoise svn gt 应用补丁 它总是按我的预期工作 但我不能使用 git 来做到这一点 Git 不应
  • 当使用 svn cp 或 svn mv 时,如何使 svn diff 生成补丁将应用的文件?

    场景是 svn cp 或 mv 某些文件 修改该文件 svn diff gt 我的补丁 在其他机器上 相同的工作副本 但没有更改 尝试应用我的补丁 失败 gt 尝试修改不存在的文件 在这种情况下 如何使 svn diff 生成适用于补丁的补
  • 我可以在不接触工作目录的情况下导入补丁吗?

    通常 当我尝试导入补丁时 如果我的工作副本脏了 Mercurial 会中止 hg import x patch abort outstanding uncommitted changes 无论如何都可以导入吗 使用 Mercurial 1
  • git am:补丁格式检测失败

    我以前从未在 Git 中使用过补丁 我需要一些帮助 我正在尝试将补丁应用到 Git 存储库来测试 Wine 补丁 特别是这个补丁在这里 https bugs winehq org attachment cgi id 60752 所以我做了以
  • Magento补丁安装失败

    从以下位置下载并运行 Magento PHP 5 4 支持补丁 Magento CE v1 7 0 0 1 7 0 2 时http www magentocommerce com download http www magentocomme

随机推荐