As shown in the following image, I have two different branches with their corresponding PRs (
PR2). The top arrow is the
PR2 is build on top of PR1. PR1 is build on top of develop. Keep in mind that I also compared PR2 to PR1 in the Github UI.
Now, at some point in time as shown below, I needed some changes from the
Bout branch so I merged it into my PR2 from develop. Then, when I came back and looked at the Github UI for PR2, I saw a very long list of contributors (on the right side of the page). That was not right to me!
So, I changed the comparison (on top of the Github UI) dropdown; from
PR2 versus PR1 to
PR2 versus develop. With that changes, the number of contributors got corrected to what I had in mind (myself and contributors of Bout). After doing this, I see that ALL COMMITS from PR1 are in my PR2 (listed in the Github UI in the chronological order).
Now, my questions are:
- I want PR1 to land (into develop), then start landing PR2. Is that possible?
- If I land PR2, what will happen to Bout? If Bout is landed before PR2, will I get conflicts? How can I resolve it?
- What did I do wrong in the first place when I merged Bout into PR2? Was I supposed to move the PR1 and PR2 move forward to the base commit of Bout, and then start merging Bout?
- Should I always compare against develop even if I create a branch on top of another one?
- My last and important question: What should I do as my next steps to have a clean state? "Clean state" means landing PR1 and PR2 without any big conflicts (with each other and with Bout); BTW, Bout is not mine and it will land separately by its owner.
I am worried about the fact that when I land PR1, I am messing PR2's state. And also, PR2 will mess up Bout?!?
Really appreciate your help!
I am aware of the following questions on SO, but none was helpful to me: