I have a problem in migrating overall project structure between diffrent repositories.
Because of a client's decision we have to maintain our own repo and they have their own. We are obligated to send them code - either whole ODI project or interfaces / procedures / KM's only.
Each time we import an interface/project we get "Missing references" error on references to model. It happens mostly in Interface.
We have tried "renumbering" repositories and it didn't help either.
Also we cannot do a Smart Export / Import because client topology and model must stay the same and can't be touched by any possible fail import.
We have matched models in ODI and DB with clients servers so naming convention is not an problem in our case.
Smart Export / Import is the recommended way to achieve such a migration. This is the easiest way to make sure all the dependencies are taken along and it's possible to skip the Topology when importing.
If the Smart Export / Import is not used, the objects should be imported in a specific order to avoid missing references :
Make sure you do not use the DUPLICATE
mode while importing as it would create a copy of the original object with a different internal ID which means references to this object will be wrong.
For the record, starting with ODI 12.2.1 a new feature called Deployment Archives can be used to deploy code from one environment to another. I gave more information about it in this presentation.
Disclaimer : I'm an Oracle employee #OracleEmp.