我正试图找到一种方法,在生产中部署带有自定义修补程序的软件。基本软件是开源的,有他们自己的repos (SVN),我们有一些补丁可以只为一个服务选择,而不是为另一个服务选择(所以我们在一个服务器上有base+patchA+patchB,在另一个服务器上有base+patchA+patchC )。
所有东西都将作为包部署,这非常简单。我正在考虑的问题是:我们如何存储修改?这些是我想过的一些方法:
patchA
的本地分支中都需要进行相同的修改)。你有其他的想法,文章,标准化的方法来做这件事吗?我提到的方式的其他利与弊?
发布于 2012-03-03 18:33:16
我知道你已经很久没问了,但你在这里得到了答案:
I可以将存储库克隆到本地git/hg中,并创建一个具有本地修改的分支。这对于移植补丁是很好的,我可以在我的分支上制作本地发布标签,但不幸的是,我丢失了有关不同补丁的信息。当然,我可以看到上游的差异,但我失去了不同地方修改的清晰分离。
您仍然可以通过Git的“提交”机制清楚地分离不同的本地修改。
在我看来,Git“提交”与通过电子邮件发送的修补程序本质上是一样的。也就是说,它用主题行和描述性正文文本封装了单个更改,解释了更改的原因。当然,它也包含对所有相关文件的更改。
如果您确实需要将更改发送到外部系统(例如,上游系统),那么git format-patch
命令(及其近亲git send-email
)实际上将以这种格式输出,但是信息仍然存在。
https://stackoverflow.com/questions/3318194
复制相似问题