旧的git-commit移动到新的分支

时间:2014-08-08 17:07:45

标签: git merge branch move git-commit

我遇到以下问题:
- 我有Master分支和Dev分支,最近又增加了一个名为TA-17的分支 - 我将所有提交到该分支的提交与Dev合并,并关闭了TA-17分支 - 然后我向Dev分支提交了两次东西 - 现在我创建了一个名为TA-38的新分支(来自JIRA内部)并首次提交它。

结果:
- TA-17的所有旧提交现在都出现在新的TA-38分支(和DEV)中 - 我的提交旁边左侧的图形显示中没有可见的新分支

预期结果:
- 即使分支机构已关闭,所有旧提交仍应显示为TA-17提交 - 在我的提交左侧的图形显示中应该可以看到一个新的分支 - 我提交给DEV分支的2次提交,不应标记为TA-38(63782a8& 2a93cb3)

在此之后我玩了一下:
- 删除了TA-38分支和它所包含的分支(并且看到所有旧提交现在仅显示为DEV的一部分)
- 将主合并到DEV(后面的1个提交)
- 使用' git branch'再次创建了TA-38分支 - 致力于TA-38分支机构的新承诺

并且所有旧提交都转移到新分支(现在显示为DEV& TA-38的一部分)

我做错了什么,我该如何解决?
https://bitbucket.org/kamaradski/t-a/commits/all

这可能是用户错误,但我找不到有关此主题的任何信息 我可能会遗漏一些东西,也许我需要改变,或者运行某种重置......?

1 个答案:

答案 0 :(得分:0)

在查看您的Bitbucket回购之后,我认为混淆是TA-38是由dev创建的,但TA-38的合并目标是master。是的,您看到TA-38master / dev分支点(5a8d807)之间的所有提交。这包括您的旧TA-17分支。

如果您将TA-38的合并目的地更改为dev,则额外TA-17次提交不应再出现在TA-38网页上。 (它们仍在那里,但作为dev的一部分。)

编辑:根据this ticket,永久更改Web界面中的合并目标是未实现的功能。您可以暂时更改它,但是在您离开页面后,它将始终默认返回到Bitbucket中定义为“主分支”的分支。

您的问题的解决方法是将“主分支”设置为dev。这可以在存储库设置中更改。如果您使用“git-flow”样式工作流程,将特征分支合并到dev,然后将dev合并到master,那么这可能会更好。