2012-12-05 111 views
0

好了,所以我在git的一个分支,它看起来像这样混帐跳过提交

A-B-C-D-E 

和看起来像这样

A-B-F-G 

我要让这样

分支的分支
A-B-D-E-F-G 

我认为标记可能会涉及,但我相当新的git。

+1

标记与此无关。标记可让您为提交创建符号名称。 – meagar

+0

这是一个很好的解释标签,它有助于我理解。谢谢 – MrBrightside

回答

8

您可能想创建一个新的分支,从提交B开始,然后选择您感兴趣的特定提交到新分支。

git checkout my-branch <B-commit-id> 

git cherry-pick <D-commit-id> 
git cherry-pick <E-commit-id> 
git cherry-pick <F-commit-id> 
git cherry-pick <G-commit-id> 
+0

所以樱桃挑选增加了一个单一的提交?(也是git checkout我的分支缺少n) – MrBrightside

+0

是的,cherry-pick将它的ID复制到当前分支中。 – meagar

+0

你也可以选樱桃:范围:http://stackoverflow.com/a/3664543/1407067 – ellotheth

0

您可能希望做一个底垫的另一分支和互动变基上犯下B.

领域指向提交E. branchG点提交摹

git checkout branchG 
git rebase branchE 
git rebase -i <B-commit-id> 

删除C-Commit-Id的完整行。保存并关闭编辑器。成品。

请在编辑器中阅读帮助信息。它解释了交互式重新分配的可能性。