问题标签 [hotfix]
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 - gitflow 修补程序应该如何工作?
我们使用 Gitflow 进行 Web 构建,我有一个关于hotfixes
应该如何工作的问题。但首先我应该解释一下,我们并没有完全使用正常的 Gitflow 工作流程。
我知道通常你会分支你的features
,他们会develop
在完成后合并到,你会创建你的release
,release
合并到master
并部署它,作为一个实际的“版本化版本”。
但是,由于这是客户工作,我们不进行“发布”,而是在需要时部署功能,因此我们分支的更改会临时feature
合并到其中。master
这确实引起了问题,因为feature
分支是从develop
前面分支出来的master
;将这些feature
分支master
合并到会将其他更改合并到master
(分支时尚未出现的develop
更改feature
)master
。我们知道这不是 Gitflow 的设计方式,但我们需要某种分支模型,所以我们(某种程度上)通过挑选提交而不是合并分支来解决这个问题。
所以,我理解这些问题,我不相信它们会导致我现在遇到的问题,但以防万一,这就是我们使用它的方式。但是我的问题是:
hotfixes
应该怎么合并?
在我的脑海中,场景是:
master
是“生产”develop
领先于master
然后,您想要修补hotfix
分支的直接问题。在 Gitflow 中,这从 分支master
,当你完成时hotfix
,它被合并到master
和 develop
但这怎么不会造成巨大的问题呢?
最近,我尝试创建一个hotfix
以更改一个文件中的单行副本。我完成了hotfix
,并且更改合并到master
没有问题,但是当它厌倦了合并到 时,它创建了一个巨大的 35 个文件差异,由于和develop
之间的差异,我没有接触过的文件中有几个合并冲突。develop
master
我知道这是因为您正在合并hotfix
分支,该分支本身是从分支到分支的,而master
不是develop
具体的更改或单次提交,所以我理解为什么会出现大规模的合并提交/冲突。
但是,我不明白的是,考虑到这一点,hotfixes
“在现实世界中”如何工作,考虑到它们master
是develop
从master
. 这就是为什么我认为我们使用 Gitflow 的方式不是问题的原因,因为无论我们的非标准部署过程如何,develop
都会领先于我们 - 我不明白为什么无论项目如何,这都不会引起巨大的头痛master
或确切的工作流程。
对我来说似乎没有意义的是,您hotfix
可能只是将 a 更改true
为 afalse
或更改电子邮件地址等简单的事情,但是要进入master
,您可能必须与大量的合并冲突作斗争。这只是标准行为吗?这就是hotfixes
工作方式吗?如果您必须坐下来解决大规模的合并冲突,那就这样吧?只是愉快地选择一个提交不是更容易吗?似乎有如此巨大的空间为可能如此微小的变化引入错误 - 您正在处理两个分支,它们可能相距数月和数百次提交。
我可能只是误解了 的过程hotfixes
,但如果我是,我不确定是哪一点。
kentico - 未安装 KIM 时如何查找 Kentico 修补程序
在我的开发机器上,我可以使用 KIM 查看 Kentico 网站的修补程序级别。我们的生产机器上没有安装 KIM。
在 Kentico v7.0 中,在 CMS Desk 中报告了修补程序级别,但在 Kentico v9.0 中并非如此。
在不使用 KIM 的情况下,我是否可以在任何地方查找修补程序级别?
git - Git-Flow 撤消已完成/合并的修补程序分支
我知道在 Stack Overflow 上有很多类似的情况,甚至在整个 Internet 上也是如此。
我只是找不到合适的答案来解决我的问题。
我的情况:
我制作了一个快速的 ASCII 艺术作品,以便您更好地描绘它。
这是几天前创建的版本。在 Dev 分支的 M 提交上,在 Release 之后,我创建了一个新功能,我修改了很多代码,然后我完成了我的功能并合并。
现在想象一下,在提交 N 处,发布之后,新功能之后,该功能现在合并到开发中。我从以前的版本(ASCII 艺术)创建了一个修补程序。
此修补程序只是特定库的更新。
我在更新库后完成了 Hotfix,然后将其合并到 dev 和 master。但它搞砸了我的 Dev 分支,现在我无法继续工作,因为我的 Dev 分支现在已经旧版本与修补程序修改。
我的问题是如何避免这种情况?
此外,我是否可以从 Dev 和 Master 中删除此修补程序,以便从我当前的开发人员创建一个新的发布分支,而不是从旧的 Dev 分支创建一个修补程序?
git - 在 Git 中查找所有依赖项提交
介绍
我正在使用 Git 来控制交付给生产的修补程序。
当开发团队想要将一些更改交付给生产时,他们会创建一个称为修补程序的文件包,然后发送给生产团队。修补程序由其 ID 指示,例如HF1, HF2, ..., HF6
.
生产团队负责审查每个修补程序并确认将它们部署到生产环境中,我们正在尝试使用 git 来跟踪这些修补程序的状态,假设我们的 git 历史是这样的
其中production
branch 具有已确认生产的所有修补程序,而delivery
branch 具有由开发团队交付但未确认生产的其余修补程序。
现在假设 HF8 已交付更改SomeJavaClass.class
,我们迫切需要将此修补程序部署到生产中,而我们尚未完成对 HF4 - HF7 的审查。我们会做如下
使用
git rebase -i HF3
并重新排序交付分支,以便 HF8 成为 HF3 旁边的第一个项目通常这会导致冲突,因为 HF4 - HF7 中的某些文件会更改 HF8 所依赖的内容。我们必须找到所有此类修补程序并将它们重新组合在一起。例如,假设 HF5 和 HF7 也有变化
/li>SomeJavaClass.class
,因此是 HF8 的依赖项,我们会将历史变基为合并
/li>production
分支到 HF8
问题
是否有一个 git 命令可以帮助我在执行 rebase 之前找到 HF4 - HF7 之间的所有修补程序,这是 HF8 的依赖项?
delivery
注意:我的目的是开发一个 shell 脚本,给定 HFX 作为输入,在分支到分支中执行变基和合并 HFX 及其所有依赖修补程序production
。
tfs - TFS 源代码控制 - 将新版本(热修复)与我们的更改合并
我在这里找到了类似的问题:TFS /Source Control: How to manage hotfixes 但答案不适合我。
所以问题是:
- 我有一个由“A”公司创建的应用程序。
- 我把它放在TFS上
- 然后我必须对代码进行一些更改(品牌、更改某些功能等)。
- 我发布我的版本。
- 现在公司“A”说:“嘿,有一些错误。我们已经修复了它们。你现在可以下载代码了”。
- 所以我下载了代码。
接下来呢?我需要进行更改和修补程序。所以我做了:
- 从 Main 中创建分支并将其称为“修补程序”
- 签出整个修补程序分支
- 将公司“A”的代码粘贴到我硬盘上的修补程序分支文件夹中。
- 签入整个修补程序分支
- 将修补程序分支与主分支合并。
结果,我只得到了“A”公司的新代码。我的所有更改都丢失了。
那么我应该如何正确地做到这一点呢?
ios - OSX Sierra 和 iOS 模拟器的调试器修补程序
有谁知道在哪里可以获得 Mac OSX 的修补程序以运行 iOS 模拟器?
powershell - Get-Hotfix 抛出 Get-HotFix :提供程序加载失败
我有大量服务器和工作站,我需要在其中查看特定日期范围的补丁。我的命令正常工作,但是有一台机器显然存在 WMI 问题,并且它抛出错误,有效地中止了整个操作。我试图添加一些命令来忽略错误并继续前进,但似乎没有任何东西可以捕获并继续,它总是中止并且我从未看到输出。
我已经尝试添加$erroractionpreference = 'SilentlyContinue'
,但这只是不会将错误抛出到屏幕上,修补程序列表仍然没有显示。
powershell - 如何检查电脑是否安装了修补程序KBxxxxxx(例如:KB4012212)?
我将(使用 PowerShell 脚本)创建一个表并将结果(正/负)添加到其中。我有一个文本文件computers.txt,其中列出了所有PC。
像这样
使用我的实际脚本,我只能看到积极的结果。