git - 如何处理依赖于另一个未 merge 功能分支的功能分支?

标签 git

这是我的情况。我在 github 中有 featureBranchA 正在等待一个 pull 请求,该请求要到明天或更晚才能 merge 。我开始研究 featureBranchB,但遇到了麻烦。我需要在 featureBranchA 中进行更改才能使 featureBranchB 正常工作。我讨厌因为等别人而无法工作。

我过去所做的是切换到 featureBranchA 并将该分支命名为 featureBranchA/featureBranchB。 merge featureBranchA 后,我会向新重命名的 featureBranchB 提交 pull 请求。这不是最好的方法,因为我必须保留需要 pull 请求的分支列表,并注意何时 merge “父”分支。

我使用的另一种方法是从 master 分支 featureBranchB 并将 featureBranchA 的更改 merge 到其中。但是,当我提交 pull 请求时,这总是搞砸了。 featureBranchB 的 pull 请求将有其提交和 featureBranchA 提交,即使 featureBranchA 已经 merge 。我也尝试过使用 rebase 而不是 merge,但是在提交 pull 请求时它会搞砸。

对这种工作流程有什么建议吗?

最佳答案

从 featureA 分支 featureB 是最好的方法。不要监视 featureA 何时获得批准,而是在准备好后提交 pull 请求,并在请求中注明它依赖于 featureA。在 pull request 中引用问题编号,Github 将自己放置注释。诸如“这取决于 #123 是否被接受”之类的东西。

如果 featureA 在被接受之前发生了更改,您(或接受 pull 请求的人)应该在 merge featureB 之前与 featureA merge 或 rebase 。

关于git - 如何处理依赖于另一个未 merge 功能分支的功能分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28977114/

相关文章:

git - 我可以在 .git/config 中指定获取多个 refspecs 吗?

git - 当我在一个存储库中包含客户端和服务器代码时,如何管理我的存储库?

Git:将本地目录置于版本控制之下

python - 导入错误 : No module named 'telegram. vendor.ptb_urllib3

Git 相对修订号

javascript - Git 钩子(Hook)预提交不起作用

git - 如何显示我的全局 Git 配置?

javascript - Nodegit 克隆不起作用?

git 没有注意到图像的变化 - .jpg

git - 如何从gitlab pull 项目?