Reputation: 6452
I have a branch named BranchA
from master
. I have some changes in BranchA
(I am not going to merge changes from BranchA
to master
).
Now I have created another branch from master
named BranchB
.
How can I copy the changes from BranchA
to BranchB
?
Upvotes: 158
Views: 412760
Reputation: 6844
Instead of merge, as others suggested, you can rebase one branch onto another:
git checkout YourBranch
git rebase AnotherBranch
This takes YourBranch
and rebases it onto AnotherBranch
.
This effectively looks as if YourBranch
was branched from AnotherBranch
, not master
.
Upvotes: 78
Reputation: 3599
if you have git 2.23 or above you can use git switch
command to do the same since git checkout
command used for a lot of things which is confusing sometime
// This command will switch(go) to BranchB
// use flag -c if you haven't created this branch yet
git switch BranchB
// git merge combines sequences of commits from BranchA to the
// current branch (which is BranchB)
git merge BranchA
Upvotes: 3
Reputation: 8553
git checkout BranchB
git merge BranchA
This is all if you intend to not merge your changes back to master. Generally it is a good practice to merge all your changes back to master, and create new branches off of that.
Also, after the merge command, you will have some conflicts, which you will have to edit manually and fix.
Make sure you are in the branch where you want to copy all the changes to. git merge
will take the branch you specify and merge it with the branch you are currently in.
Upvotes: 179
Reputation: 11570
If you are using tortoise git.
please follow the below steps.
BranchB
TortoiseGit --> Fetch
BranchA
and click ok.TortoiseGit --> Push
.Now your changes moved from BranchA to BranchB
Upvotes: 1
Reputation: 1745
For me the solution was - stash the current changes in the branch and then switch branches and then apply that stash to that branch.
Upvotes: 4
Reputation: 1178
Copy content of BranchA into BranchB
git checkout BranchA
git pull origin BranchB
git push -u origin BranchA
Upvotes: 12
Reputation: 109
This is 2 step process
If you want to push your branch code to remote repo then do
Upvotes: 10
Reputation: 2974
Merge the changes from BranchA to BranchB. When you are on BranchB execute git merge BranchA
Upvotes: 8