我正在使用来自OpenSource项目的代码的项目。其中一个要求是尽可能多地将代码推回到上游。与SVN上游同步工作
远程项目使用Subversion(不是很好)。
我目前的设置是这样的:
[Remote SVN] (git svn fetch)-> [My public Git] <-(push/pull)-> [My dev. Git]
VV
(pull)
VV
[Testing grid]
EDIT 11.7。 - 重新提出了问题
我的问题是我的本地公共回购和svn上游并存。
我必须提供3个公共分支:
- 保守稳定
- 实验稳定
- 发展
这些分支现在是线性的(发展成为实验稳定和实验变得保守) ,但目标是合并的标准3头方法。由于它们的公共性质,我不能重新分配这些分支。
现在完全正交于此我试图以某种方式使向上游发送补丁更容易。从我的分支挖出它们很慢并且容易出错。
我目前典型的工作流程是:
- 落实在上面开发分支的一些功能
- 测试&修复功能
- 测试&解决这个新特性(实际上发生了很多) 破碎等特点
- 确定这是否可以在上游接受或不接受(30:60是:否)
- 对此做些事情(我们只是写一个新的TODO)
上游的另一个问题是,他们接受补丁到不同的分支(我的公共分支是基于他们的稳定分支)。一旦补丁达到稳定分支,我可以简单地忘记它们存在,但在这种情况发生之前,我需要将它们保留在本地。
你的任务看起来类似于这个http://hgbook.red-bean.com/read/advanced-using-of-mercurial-queues.html。通过由“Mercurial Queues”管理的补丁堆栈解决。不知道是否有这样的工具git – Alsk 2010-07-15 11:05:49
@Alsk这确实看起来很相似。谢谢你的提示。 – 2010-07-15 20:50:08