How to use multiple iTunes Libraries with iPhone / newer iPods
All credits / Original Material revealed:http://www.andrewgrant.org/2008/03/30/how-to-sync-an-iphone-with-two-or-more-computers.html
1) Find your iTunes Library ID
On the machine your iPhone currently syncs with, open "iTunes Music Library.xml" with a text editor and find the entry between the <string></string> tags, after "Library Persistent ID". In the example below this is 8B6C633F7DACB74B. And mine is: 659B92FE6918ACBD. Copy this entry exactly to a piece of paper, email, temporary file etc. You can then close this file.
2) Change your Library ID
iTunes stores your library information in two places. An XML file and a binary file. You now need to change the ID in both so they match your other library.Make sure iTunes is not running.On the machine you want to sync with open "iTunes Music Library.xml" in a text editor. Again, find the entry between the <string></string> tags after "Library Persistent ID" and copy this entry exactly. This time you can use the clipboard if you wish.When you have a copy, replace this entry with the one you copied in part 1. Make sure you do not change anything else, and the length of the entry is 16 characters/digits. Save this file and close it.
In the Hex Editor, open "iTunes Music Library" (Tunes Music Library.itl on PC).
Select "Find and Replace" from the Edit menu. Make sure "Hex" matching is selected (not ASCII). In "Find" enter the ID you took a note of in Part 1. In Replace, enter the ID you copied at the start of Part 2. Choose Replace All, there should be one match.
Save this file and close it.
Success!
Start iTunes on the machine you wish to sync with and plug in your iPhone. When you select "Manually manage music and videos" you will no longer be prompted to erase your data, nor will the files on your iPhone be grayed out.
Additional Notes
Previously I’ve found that intentionally corrupting the binary "iTunes Library" file (e.g. replacing it with a text file) would cause iTunes to regenerate it using the XML data. This no longer appears to work for me in iTunes 7.6.1 and the "repaired" file only contains a few songs. This may be because I keep my music on an external drive but I cannot say for sure. Either way, patching the binary file does not take long and removes any chance of later problems.