I am not terribly familiar with CVS, but at my work I have a project in CVS that is shaped like this:
------A-------B D Main branch
|
|----------C My branch
The project at tag A works. At tag B, it does not, so A is in production. This was all done years ago. I come along and want to make changes to A, but I don't know much about B, and since I don't want to touch it, I make a branch. At C, I have decided that my changes are important, and B is irrelevant. I want whatever is at C to sit at D on the main branch, and everything from A to B to be ignored.
Someone at my work suggested that I copy, via the OS, the contents of my branch over the contents of the main branch, but then said it breaks the history and I should ask Stack Overflow for a better solution first.
I'm doing this all in Eclipse, so my idea was to open A in the workspace, merge C into it, and commit the result to the head, prioritizing my side for each and every difference, to get D. However, I'm afraid that the merge from AC to D mightn't do what I expect, and I don't want to break things.
My question is: Will this do what I expect it to do? If not, what is a safer way to do this than my co-worker's suggestion?