Git:如何从一个分支中挑选提交并为另一个分支创建拉取请求?

时间:2020-07-08 06:21:06

标签: git bitbucket git-flow

我有两个分支devmaster。我正在使用bitbucket。

我需要从dev分支中挑选一些提交。

然后需要为master分支创建拉取请求。

由于我的dev环境有很多东西,其中有些无法直接合并到master

因此从dev分支获取commit 。带他们在一起。创建请求合并到master分支的请求。

2 个答案:

答案 0 :(得分:0)

您可以使用

git cherry-pick <commit id>

选择特定提交

关闭周期并从主控台进行PR。 我们可以执行以下步骤:

假设位于master分支上:

git checkout -b myNewBranch // this will create a new branch named myNewBranch
git cherry-pick <commitID 1> // this will take the commit with the commit ID 1 and 
                             // attempt to place it on top of the master branch. 
                             // Note however, there might be conflicts to resolve
git cherry-pick <commitID 2> // this will take the commit with the commit ID 2 and place on top of the master branch
git push origin/<some branch name> // will push the changes to remote. Usually origin/<local branch name>

然后,您可以根据您的平台发出请求请求。 因此它可以来自GUI。可以在GitHub平台或DevAzure等上使用 根据您的情况,通过BitBucket GUI。

侧面说明:上面的步骤是为了简单起见。也可以只用一根线制作樱桃。像这样:

git cherry-pick <commitID 1> <commitID 2>

答案 1 :(得分:0)

Fork original-repo as "your-repo"

git clone your-repo
cd your-repo
git checkout dev
git pull //to get all your commits to local
git checkout master
git pull //to make sure branch is upto date
git cherry-pick commit-id
git push //commits the cherry-picked commits to the master branch of forked repo

Raise PR from Forked repo "your-repo" master branch to "original-repo" master branch