无法在SourceTree gitflow中创建新的热修复补丁

13

这里输入图片描述

你好,这是我的git工作流程。我正试图使用Sourcetree创建一个新的hotfix。不幸的是,我遇到了这个错误:

There is an existing hotfix branch (issue-#001). Finish that one first.

我已经完成了 issue-#001。为什么我无法创建一个新的?

5个回答

31

如果您想要多个热修复程序,可以设置一个配置选项。

git config --add gitflow.multi-hotfix true

这将允许多个热修复,但默认情况下不允许。您可以针对每个存储库或全局添加此选项。


4

如果你想再次创建同名分支,你需要删除已经存在的同名分支。Git不允许创建重复名称的分支。

你也可以尝试通过将最新的主分支合并到热修复分支中,然后在更新后的分支上进行操作。


当我创建了热修复分支并完成后,我需要删除它吗? - Mazzy
是的,理想情况下,在合并回主分支后,您需要将其删除。 - Biswajit_86
1
默认情况下,Gitflow 仅限制存在 一个 现有的热修复分支,因此如果所有热修复分支都被删除,无论名称是否相同,事情都可以继续进行。 - themefield

3

检查是否存在热补丁:

git branch | grep hotfix

它会给你提供热修复分支的完整名称,例如issue-#001。如果不再需要该分支,请删除它:
git branch -D issue-#001

要查看 issue-#001 是关于什么的,请运行

git stash
git checkout issue-#001
git status
git diff

0

在创建新的hotfix之前,您需要删除最后一个已经创建的hotfix(分支仅命名为hotfix而没有斜杠)。如果您在command prompt上尝试创建新的hotfix,您将收到以下消息:

Switched to a new branch 'hotfix/XXXXX'

Summary of actions:
- A new branch 'hotfix/XXXXX' was created, based on 'main'
- You are now on branch 'hotfix/XXXXX'

Follow-up actions:
- Start committing your hot fixes
- Bump the version number now!
- When done, run:

     git flow hotfix finish 'XXXXX'

如果需要使用多个热修复分支,请运行以下命令:

git config --add gitflow.multi-hotfix true

-1

看起来你已经有了这个名称的热修复 请检查确认:

git branch 

你应该看到 hotfix/XXXX,无论你使用什么名称


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