This all goes back to EA vs CM, and the core issue is branching.
You want two (or more) separate tracks of model development, with the ability to keep certain things common and to move changes between the tracks.
In source code management, this is everyday stuff. But while EA can manage package-level check-in, check-out and revert, it simply does not do branching.
My recommendation for version management in EA is to use the built-in baseline functionality rather than an external version control system like Subversion, certainly if you're working with a DBMS repository. Both work on the package level and both are based on XMI files, but baselines are stored within the EA repository and there is no external tool involved.
The main advantage is that baselines allow you to do visual diffing of model contents, which external version control doesn't. The main disadvantage is that package-vs-baseline status is not displayed in the project browser.
Baselines can also be imported/exported between projects, and changes from a baseline can be selectively merged into the project (importing a baseline is a separate activity from merging its contents). This is essentially what the reusable asset service introduced in EA 11 does.
This can be used as a way to achieve branching: copy the entire project and move baselines back and forth between them. I'm not aware of any way to achieve (robust) branching at anything lower than whole-project level, although the reusable asset service might be of help there -- I haven't used that in anger yet.
I have previously implemented the whole-project-branching strategy, and I have also (for a different client) built a solution based on tags and a lot of Add-In trickery. Another approach is to use Change elements extensively together with the Phase and Status fields, but have the components etc contain only the "as-is" version until some milestone where you go through the entire model and update it to become the new version (works fairly well for requirement models, but not for much else).
Either way, you can get to the "acceptable" level but it'll never be as slick as branching in a version control repository.
Where do I send my bill for $.02?
/Uffe