I have a repository in which there are two branches MAIN and FEATURE1. Soon after I branched, I needed to make a bug fix and then I tagged MAIN with a version number. These are the only changes on MAIN after the branch. I've been working in FEATURE1 and have added several files.
1--2----4--5
\
3--------6--7--8
- 3 - Branch created
- 4 - Bug fix
- 5 - Tag added
- 6-8 - Feature changes
Note There is a single conflicting change between the bug fix and the feature.
Now, my feature is complete, and I want to merge FEATURE1 (8) into MAIN (5). But when I perform the merge, it doesn't appear that any of my changes are moved into the MAIN branch.
When I performed the merge without committing, I noticed a few things:
- All of the files that were added in the source branch (FEATURE1) are marked to be removed.
- There are a lot of
.orig
files (I have no idea what these are). These are marked?
(unknown action) and are not committed. - Existing files are marked 'M' (modified) as expected, but the changes aren't migrated.
It's almost as if it's taking MAIN as the source and FEATURE1 as the destination, but I'm sure I'm merging into MAIN. I update to MAIN (5), right-click FEATURE1 (8), and select Merge to Local.... The resulting branch appears as part of MAIN as expected.
I've never branched using TortoiseHg or Mercurial before. I'm used to TFS, and I feel like I'm getting the opposite behavior.
Basically, I want the changes I made in FEATURE1 to be present in MAIN.