New text: There are really too many things to cover in a Q/A, I'll add a couple high level things but you really need a pro consultant to set you up. There are also some good books on the subject but really you have to believe in what you are doing so you want to pick a successful project/architect lead first that will set up the processes. Code repositories (you need one), defect feature process (you need one), driver sequencing to get the satellite sites working earlier vs later, or they can use the contract to develop test components.
The keys here are to set up processes at the IT level that enforce:
Product/Development Management
==============================
1) Proper Componentization, design by contract etc. will go along way to smooth the combined build
2) Select a Lead Architect and / or Lead Developer carefully, someone has to override the regional issues
3) Set up Wikis early and assign people to maintain
4) One Region can develop another test another support etc., but you need to be able to reproduce errors locally to the team that will fix
5) Multi-Release wars... optionally set up a research or next release development team who focuses on the next release to replace parts of the current or in development release.
Internationalization
====================
1) Separation of translatable text into translation packages, separating code from visuals such that you can translate / update translations on demand
2) Unicode... HTML/XML/Java/File Systems all support NLS chars via UTF8 on the wire/disk and UTF16 in memory. Stick with Unicode in that stack/programs and you can support all NLS chars, use a specific code page in your runtime applications such as any latin code page and you're busted.
3)Convert data at the edge.. use edge point mediations to convert code page specific data to unicode to enable NLS in the apps. Convert to Browser specific code pages at the last possible moment to orient to the user.