旧的 git-commits 移动到新分支

3
我有以下问题:
- 我有一个主分支和一个开发分支,最近又加了一个TA-17分支。
- 我把所有提交的更改合并到Dev分支,并关闭TA-17分支。
- 然后我在Dev分支上提交了两次更改。
- 现在我从JIRA中创建了一个名为TA-38的新分支,并对其进行了第一次提交。

结果:
- 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

在查看您的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,那么这可能更好。


谢谢回复。我还没有找到如何更改合并目标的任何信息。Bitbucket网站在Web界面上提供了一个功能,但似乎无法保存其设置。您会如何处理这个问题? - Kamaradski
嗯,你说得对。根据这个页面(https://bitbucket.org/site/master/issue/9403/creating-a-branch-via-the-web-interface),在网页界面中永久更改目标是一个未实现的功能。所以,你做得很正确。这是Bitbucket的问题。我会更新我的答案。 - Rob Bajorek
你说得对,将主分支更改为dev就解决了问题。然而,仍然没有TA-38的分支显示。已将您的答案标记为正确,因为主要问题已解决。 - Kamaradski

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接