jgitflow和pull请求

问题描述 投票:0回答:3

我是git的新手。我对git知之甚少,而且我在使用它时非常成功。

所以我有一个大师,开发分支。从开发我已扩展到功能分支和发布分支。为了从开发分支出来,我使用了以下命令。

jgitflow feature-start from develop
jgitflow:release-start from develop

现在我完成了这个功能,我想合并到开发中。我这是第一次这样做。现在我很困惑如何做到这一点。理想情况下,我应该使用以下命令:

jgitflow:feature-finish

我认为另一个选择是执行拉取请求。

请告诉我哪个是正确的选项以及如果在使用jgitflow:feature-finish时发生冲突会发生什么

maven-release-plugin jgit jgitflow-maven-plugin
3个回答
0
投票

有关详细信息,请访问https://bitbucket.org/atlassian/jgit-flow/wiki/goals/feature-finish

根据您的要求使用必要的标志,如keepBranch,壁球。

您还应该将featureRebase用作true。这将在从您的案例中开发的原点合并之前重新定义要素分支。这将允许您以更好的方式处理冲突。


0
投票

尝试完成功能时避免冲突的最简单方法是在执行finish-feature之前遵循以下工作流程:

  • git fetch:确保您的本地回购副本是最新的
  • git checkout develop:去develop
  • git merge origin/develop:确保你的本地开发是最新的(origin在这里是遥控器的名字)
  • git checkout <feature-branch>:再次转到你的功能分支
  • git merge develop:合并并解决冲突,如果有的话(在你的功能分支上)
  • mvn jgitflow:feature-finish你已经解决了冲突,所以这将有效

我不推荐在另一个答案中提到的featureRebase选项,因为你说你只知道一些关于Git的基本知识。如果您推送了本地功能分支并且其他人正在处理它,则Rebase会使事情变得复杂。 Rebase只能在本地分支上使用,因为它会更改历史记录。

关于拉动请求,请参阅Gitflow Workflow With Pull Requests上的https://www.atlassian.com/git/tutorials/making-a-pull-request/how-it-works


0
投票

拉取请求是必不可少的,因为它会检查更改。但是,如果从PR合并,您仍然可以运行jgitflow:feature-finish,尽管它会导致保留远程分支(如果之前被推送)。理想的方式是

  • 提高该功能的PR,获得批准。
  • 运行feature-finish命令以合并更改以开发和清理本地和远程功能分支。

要解决冲突,最好从本地开发而不是通过功能完成进行合并,因为它可能会变得混乱。

© www.soinside.com 2019 - 2024. All rights reserved.