Sourcetree git 流程完成开发分支的功能,但开发分支受到保护

Sourcetree git flow finish feature to develop branch but develop branch is protected

我错了。 在 Sourcetree 中,我从 develop 开始创建了一个新的功能分支,并进行了一些更改。后来我想完成功能并删除功能分支。可悲的是,我忘记了开发分支是受保护的,并且在被允许提交之前至少需要一次审查。我也没有权利规避这个。

现在我的功能分支被删除了,我的更改无法推送。

我怎样才能改正我的错误,例如取回功能分支(或创建一个新分支)并创建拉取请求而不是仅仅完成它?

(匿名)图表看起来像这样:

推送时出错:

我的理解是您在本地将您的功能分支合并到 dev,但您对此感到遗憾并希望在服务器端执行合并(通过拉取请求)。没问题!

  1. 从“修复”提交创建一个新的功能分支并推送它(并在 GitHub 请求拉取请求)。

  2. 然后将您的本地 dev 硬重置为合并前的提交(未显示在您的屏幕截图中),从而撤消不需要的本地合并。

    或者,更好的是, 完全删除您的本地 dev!它毫无用处,因为你永远无法合并到它,它会让你陷入这样的错误。将来要创建新分支,只需从 origin/dev 获取然后分支即可。这就是专业人士所做的!

(这两件事在 Sourcetree 中都很容易完成,尽管我个人会使用命令行。)