无法合并/删除功能分支

时间:2018-06-18 21:30:00

标签: git bitbucket

我已经将一个功能分支合并到了develop上,但是当我执行git fetch --all --prune时它会不断重新出现。

合并分支的提交也会重新出现在合并的分支上,并重新创建已删除的分支。

可能导致此行为的原因是什么?

合并和删除功能分支后,执行提取输出以下内容:

获取原点 来自bitbucket.org:Project/projectName  + fbfe775 ... 9ad9ec2 develop - > origin / develop(强制更新)

注意“强制更新”,此命令会向分支添加14个提交。

随后删除合并,并在quesiton中恢复功能分支,就好像我没有合并它一样。

2 个答案:

答案 0 :(得分:2)

git fetch从某些其他 Git获取提交和分支名称。然后,它会将他们的分支名称(例如feature)重命名为远程跟踪名称,例如origin/feature

如果删除自己的origin/feature远程跟踪名称,则对其他 Git没有影响。运行git fetch origin会发现origin有一个名为feature的分支,因此会更新或创建您自己的origin/feature

然后,你必须做的是明确的:从其他Git存储库中删除分支名称 feature ,这样当你的Git连接到他们的Git,他们有分支名称feature而你的Git 不会更新或创建你自己的origin/feature,事实上使用--prune删除您的origin/feature(如果存在)。

为此,请参阅How do I delete a Git branch both locally and remotely?

答案 1 :(得分:1)

您可能仍在远程服务器上拥有分支。运行push删除它:

git push origin :name_of_the_branch