Its annoying me because I built a room surrounding my city and the vines still came in. The same thing happened to my friends city too. My friend covered a house in vines and it spread to our houses.
Looking at the minecraft wiki there are a couple of properties that might help you.
- Vines can be destroyed by fire or water.
- Vines occupy a block, so if a block is covered in a sign or ladder the vine can't grow there
- Vines will be destroyed when sand or gravel attempts to occupy the space adjacent to the vines
- Vines will disappear if a torch is placed on them.
You can remove the vines using a water source placed in a high area (I don't recommend using fire). And, as suggested by Rory Alsop build a moat to keep the vines out.
(I'm assuming the question is not about how to eliminate vines, but how to constrain their growth to the desired location.)
Vines spread indefinitely downward into empty space. Vines spread sideways and upward as long as there are no more than four vines nearby. (I don't know exactly how far “nearby” is, but I know that vines on a wall will stop spreading once there are five vine-tops in the area. More research needed; the specific number is from Minecraft Wiki.) Therefore:
To keep vines from spreading downward, you must occupy the space below them. A popular block to do this with is string (a.k.a. tripwire), because it is nearly invisible and can be placed in midair.
To keep vines from spreading sideways or upward, you must either occupy the space such as with string or torches, or make sure that there are at least five vines closely grouped where you want them and not where you don't.
Vines don't "jump" from one building to another, and don't spread across flat ground. This may have been different in early snapshots, but in the current version, vines can only spread out across a wall, or grow downwards into open air. If it does the latter, it stops growing once it reaches the ground.
So long as you keep a gap of more than one block between your buildings, the vines will only stay on one of them.