2011-05-18 67 views
0

我有一个话题分支(新的HTTP API),这是基于主分支,有一些(v0.98系列)东西整合。分支衍合中含有的git(非快进)合并

现在我想重新分配我的主题分支以获得使用git rebase v0.98-series新集成的东西。然而,这与新事物完全无关的冲突失败。这些冲突发生在我执行与另一个分支合并的位置。

我现在正在寻找解决这个问题的方法。失去历史的一部分不会是一个问题。

的提交历史看起来像这样:

* 163e527 - (HEAD, pub/new-http-api, priv/new-http-api, new-http-api) [FIX] Monkeypatch icalendar to fix rrules in iCal (26 minutes ago) <MYSELF> 
* 9392d22 - [IMP] Add iCal export for reservations (87 minutes ago) <MYSELF> 
....................................... 
* f0af4bb - [REF] Use tuple instead of list for '... in (...)' (7 days ago) <MYSELF> 
* b7d5e36 - [IMP] Use HTTP 400 response if limit is too high (7 days ago) <MYSELF> 
* d3a7b57 - [VER] Merge pedro's sorting/limit changes (7 days ago) <MYSELF> 
|\ 
| * a18690b - [IMP] HTTP API - sorting (8 days ago) <SOMEONE_ELSE> 
* | ebbe2ca - [REF] Store statuscode in HTTPAPIError exception (7 days ago) <MYSELF> 
* | de43588 - [IMP] Improve accesskey/signature and cache system (7 days ago) <MYSELF> 
* | f2d6a0a - [IMP] Require HTTPS for authenticated requests (8 days ago) <MYSELF> 
* | 69d733f - [IMP] Add request signature validation (8 days ago) <MYSELF> 
* | 29e6755 - [FIX] Ignore unknown kwargs in Serializer (8 days ago) <MYSELF> 
|/ 
* db99b6f - [REF] Improve export routing and error handling (8 days ago) <MYSELF> 
* 0ad22e1 - [FIX] return proper results (again) (8 days ago) <MYSELF> 
...................... 
* 4846eb3 - [IMP] Fairly functional API version (4 weeks ago) <SOMEONE_ELSE> 
* 08ea247 - [FTR] HTTP API - First sketch (4 weeks ago) <SOMEONE_ELSE> 

git merge v0.98-series会工作得很好,但我强烈倾向于衍合那些特性分支。

回答

1

较新版本的git允许挑选一系列提交(实质上是rebase)。您可以在合并之前,之间,之后选择提交范围,并将其提交到主控头上。

+0

这是否也允许我选择合并提交(即修复难看的冲突的提交)? – ThiefMaster 2011-05-19 06:10:00

+0

在HEAD上进行提交后,您总是可以执行“rebase -i”和壁球 – karmakaze 2011-05-19 07:30:22

+0

所以我想我不会有机会,但做了再次合并期间我做的丑陋的冲突修复? – ThiefMaster 2011-05-19 07:55:51

1

看看git rebase --preserve-merges选项。

+0

失败:http://paste.pocoo.org/show/391267/ - 冲突是可怕的合并(巨大的代码块改变,当做合并前一段时间我实际上采取我的代码并应用更改从其他人手动) – ThiefMaster 2011-05-18 15:51:52

+0

它不保证没有冲突,但它确实意味着你可以保持内部合并。如果你有合法的冲突,你不能让他们离开。 – siride 2011-05-18 15:58:00

+0

我不认为我的答案会帮助,但它值得一试:( – siride 2011-05-18 15:58:27