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 更干净!
我刚刚完成了一项功能 (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 更干净!