问题标签 [patch]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - 如何在 Git 中获取标签与其基础之间的差异?
我需要针对其基础生成一个提交补丁。该提交上已标记了一个标签。所以就像在 939023 上我做了一个提交,现在它变成了 213232,我将用标签标记 213232。现在给定标签,我需要找出 213232 和 939023 之间的差异。
我的意思是我需要一种方法来生成其标签被赋予其基础的任何提交的差异。
有任何想法吗?
.net - 带有补丁管理/自动更新的 .NET 部署选项
有哪些选项可用于部署使用 WPF 而非 ClickOnce 构建的 .NET 桌面应用程序?
首要任务是
- 应该通过网络(互联网或内部网)工作
- 更新管理;检查软件更新和自动更新的选项。
- 补丁管理;仅下载和更新那些已更改的文件。
windows-installer - 以编程方式修改补丁创建属性 (.pcp) 文件?
有没有办法使用带有补丁创建属性文件的 msiexec.exe 和 msimsp.exe 编写修补程序构建的完整过程?
我使用 msiexec.exe 创建前后 msi 文件的网络安装,使用 Orca 创建一个 .pcp 文件,使用 msimsp.exe 创建补丁文件。
我一直在按照这两篇文章中的步骤进行操作:
假设我创建了一个从 1.0 到 1.1 的补丁,现在想要创建一个从 1.1 到 1.2(或 1.0 到 1.2)的补丁。我想重用我用 Orca 创建的 .pcp 文件,但是对该文件的任何修改都应该通过脚本(例如 VBScript)完成,而不是有人不得不再次在 Orca 中打开它。据我了解,我必须 - 至少 - 更改 PatchGUID 值。
如何使用脚本进行这样的修改?
c# - I don't "get" how a program can update itself. How can I make my software update?
Say I make an .exe file and everything is peachy. Wonderful it works.
Say I worked on a new feature on the software and I want it to be available for people who already have the older version, how can I make the software find my new version, patch it, and then go about it's business.
I can't seem to wrap my head around the issue.
Thank you.
EDIT: I'm sorry for the confusion, but I was meaning a more code-wise answer. Is there something special in my code I should have to allow updating?
For example, if I want to add a new feature, how can I add a "method" to an already packaged .exe? :S That has me in a swivel.
eclipse - 是否可以在 Eclipse 中从已经提交的更改中创建补丁?
我使用 Eclipse 中的 Create Patch 工具为未提交的更改创建补丁。我正在寻找一种在 Eclipse 中为已经提交给 VCS 的更改创建补丁的方法。
除非我错过了一些我认为这是不可能的东西,但是有没有插件可以添加这个功能?例如,使您能够在历史视图中选择两个版本并在它们之间创建补丁或比较两个分支并能够从同步视图中的结果创建补丁?
我很高兴从命令行创建这样的补丁,但如果可能的话,我正在寻找一种简化/集成流程的方法。
谢谢你的帮助。
更新:如果有任何建议是针对特定源代码控制系统的,我对 CVS、SVN 和 Mercurial 特别感兴趣。再次感谢。
deployment - 如何部署:1 个补丁中的数据库、源代码和二进制更改?
我是一个开发团队的一员,该团队使用 Joomla 和 Drupal 等系统处理许多基于 CMS 的项目。
在我们的开发过程中,我们所有的代码更改都在 Git 内部进行管理。在 sprint 结束时,我们创建一个DIFF,我们可以通过补丁将其应用到实时站点。
问题是大多数时候,变化包括
- 数据库架构更改
- 数据库数据更改
- 源代码更改
- 二进制文件更改(如图像)
Git Diff 可以很好地处理源代码更改。二进制文件仅不包含在 Diff 中,除非参考文件已更改的事实。
数据库架构更改和数据库数据更改是一团糟。
我在徘徊,是否存在类似统一的补丁系统,可用于在 1 个补丁中部署所有这些更改。
所以问题是,“是否有一个系统可用于一次性部署所有这些更改?
理想情况下,该系统将允许像补丁一样运行干运行,但适用于所有 4 种数据类型。
编辑:感谢大家提供的反馈,这是我在该领域进行研究的起点。
这是我到目前为止发现的:
使用 linux 打包系统部署基于 php 的应用程序很困难,因为对项目的更改是迭代发生的,而不是作为发布发生的。
可以使用 dbconfig 将更改部署到项目,但问题是生成 mysql db 差异(模式和数据)
部署基于 php 的应用程序真正缺少的是一个部署管理器,它将安装在服务器上,并将作为部署补丁的接口
我在这个主题上创建了一个 Google Wave,结果产生了很多信息。如果有人有兴趣阅读这一波,请告诉我,我会加你。
maven-2 - 执行 Maven 补丁发布
是否可以在 Maven 中执行补丁发布?我想创建一个仅包含一个自发布以来我已更改的类的 jar。
svn - 如何合并多个补丁文件?
我们使用 subversion 并且在每次签入期间,一个脚本会创建一个包含所有差异的补丁文件。现在对于同一个问题/缺陷,可能会有多个签入,我们最终会得到多个补丁文件。现在要查看问题的合并更改,必须合并所有补丁文件。有没有办法做到这一点?
或者解决相同问题的另一种方法是:在颠覆中是否有一种方法可以将所有更改的组合差异作为特定注释的一部分完成?例如:
签入评论:“123:第一次更改”
签入评论:“123:第二组更改”
签入评论:“123:第三次更改”..
有没有办法获得评论前缀为 123 的所有更改的组合差异?
terminology - “补丁”一词的定义
就个人而言,我使用“补丁”一词作为对症治疗的软件,它使补丁成为快速而肮脏的错误修复。但是,我不确定这是否正确,因为我经常看到它被用于其他含义,例如作为程序更新的同义词。
“补丁”这个词到底是什么意思?
更新:我认为术语确实很重要,因为它是文档和通信的一个基本方面,因此也是一般软件开发的一个基本方面。问题是计算机术语的定义相当松散,我不知道哪个字典提供了明确的参考。因此,我认为在 StackOverflow 上问这个问题是个好主意。
branch - 反转差异或补丁 || CVS 差异
在 CVS 中,我的工作副本 (WC) 位于某个分支(我们将其称为“foo”)。另一个开发人员已将其他更改签入 foo。我想在我的 WC 和 foo 的上游状态之间做一个差异。通常,在主干(HEAD)中工作时,我只做一个 cvs diff,这很好。但是由于某种原因,在分支中执行普通的 cvs diff 时,diff 是空的。当我尝试使用“cvs diff -r foo”时,差异显示出来,但它是倒置的——上游添加显示为减号,上游删除显示为加号。
我怎样才能:(1)让 CVS 以“另一种方式”区分(加上上游添加),或者(2)反转补丁(通常)?