title: How to take changes from one git branch to another branch
body: <p>I have the below branches.</p>
  <blockquote>
  <p>Branch A : The main branch or the master branch.</p>
  <p>Branch B : Created from A.</p>
  <p>Branch C : Created from B.</p>
  <p>Branch D : Created from A</p>
  </blockquote>
  <p>Now I did some changes to branch C and now I could merge them to branch B. But at this moment a new branch D is created from branch A and now I should merge my changes to branch D. How to take all of my changes to branch D ? Since I have lots of commits I can not cherry-pick them one by one. I tried to rebase branch D on branch C, but I am getting lots of conflicts which I can't resolve manually. So what is the best way to merge branch C to branch D ?</p>
  <p>EDIT 1 :</p>
  <p>Let me clarify my problem a bit more. Here branch A is the master branch. Branch B is a release branch (which has just ended, so the branch is now in active). Branch C is my topic branch cut from B, branch D is the new release branch cut from A. Ideally we should merge our topic branch only to the release branch and cherry pick those changes to the master branch (A).So we create a topic branch from the current release branch then do our changes and raise merge request. We should not add anything to the inactive release branch. Now I was working on a branch C which was cut from a release branch B which has become inactive. Now I should create a branch from D and add all my changes there and raise one Merge Request. I don't want to do that. I want to use my branch C to raise a Merge Request on branch D which will not have any conflict. Is it possible ?</p>
  <p>My solution is :</p>
  <p>I would create a temporary branch B_temp out of branch B. Squash merge my topic branch C to B_temp. Then create a new branch E out of D, cherry pick the commit from B_temp to branch E, resolve any merge conflict (I can resolve those as they are my changes only). Raise merge request for F onto branch D. I am wondering if there is any better solution available instead of creating new branches and cherry picking if I could simply use the old branch C.</p>
  <p>Note : We are not allowed to merge anything in the master and release branches without proper Merge Request and approval.</p>