Git - 开发新功能,而一些需要 class 正在拉取请求

Git - work in new feature while some needed class are on pull request

我刚刚完成了一项功能 (feature1) 并创建了一个合并请求以将其合并到 master。我想开始研究另一个功能 (feature2),但我需要的一些功能刚刚在 feature1 上引入。在某些需要的功能仍在拉取请求中时,开始使用新功能的最佳方式是什么?还有其他拉取请求可能会在 feature1

之前合并

我是否应该在本地 master 之外创建一个 feature2 分支,然后在本地合并 feature1

    git checkout master
    git pull origin master
    git checkout -b feature2
    git merge origin/feature1

或者我应该从 feature1 分支创建 feature2 然后在一段时间后合并 master 中的更改:

    git checkout feature1
    git checkout -b feature2
    ... commits
    git checkout master
    git pull origin/master
    git merge origin/master

哪个更好?你有更正确的做法吗?

从意识形态上讲,您永远不会在未经审查的分支上工作!但是,如果您知道 "feature1" 很好并且它会被拒绝,那么只需在 "feature1" 上创建一个新分支并开始工作。一段时间后,您可以 "rebase" 您的 feature2 超过 "master" 并且如果 "feature1" 被提升为 master 那么指定给 "feature1" 的提交将不再是您的 "feature2" 的一部分分支!

你的回答你的第二种方法是正确的,但 rebase 更干净!