I'm working on a project and I submitted my first pull request and while I'm waiting I want to continue on working on my project building up from what I worked on the merge that's still pending on. Right now I have :
*master
user_story_1
user_story_1
has an open pull request.
Now I'm trying to create a new branch user_story_2
where I can continue the work I left of at user_story_1
. How can I do this in Git without getting into any conflict or affecting my pending merge?
I'm assuming you want to start the new user_story_2
branch on top of the work you've done in user_story_1
. Here's the workflow I use in this sort of scenario:
Open Pull Request for user_story_1
:
* (user_story_1) * / * (master) * *
Create new branch user_story_2
based on user_story_1
:
$ git checkout -b user_story_2 user_story_1
* (user_story_1, user_story_2) * / * (master) * *
Work on the new branch:
* (user_story_2) * * (user_story_1) * / * (master) * *
Pull Request gets merged:
* (user_story_2) * * | (master) |\| | * (user_story_1) | * |/ * * *
Delete old branch:
* (user_story_2) * * | (master) |\| | * | * |/ * * *
Rebase new branch onto master
:
* (user_story_2) * / * (master) |\ | * | * |/ * * *
My preferred workflow for this:
git checkout -b user_story_1
.user_story_1
.user_story_1
.user_story_1
, git checkout -b user_story_2
.user_story_2
.user_story_1
gets merged into master, switch to user_story_2
and do git rebase -i master
.user_story_2
that you want to include in the rebase. Delete the top few commits that came from user_story_1
.user_story_2
rebased on master and only having its commits.If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With