Is there a concrete linguistic reason why im- and ex- are used together in the case of goods but im- and em- in the case of people? Clearly, exigrate and emport sound odd, but are they a result of the evolution of language or do the prefixes have different underlying meanings?
I know English doesn't normally care much about spelling, but look at the spelling anyway. In immigrate there are two m's while emigrate has only one. Why? Because the first m of immigrate comes from the prefix in- (the n becomes m before m's, p's and b's, and sometimes f's and v's), while the second m comes from the stem migrate.
Emigrate meanwhile is formed with the prefix e-, a variant of ex- that is used in certain contexts, usually where the x would be clumsy (in Latin). The proper form of the word if it used ex- instead of e- would be exmigrate, not exigrate (likewise, export would eport not emport if the inverse were true of it).