Being able to pick individual components for a solution is great for deploying a new feature without fear of overwriting components that you didn’t modify (or for managing parallel dev tracks).
HOWEVER!
Problem:
When you add a new lookup field, if the parent entity is not already in your solution, CRM will (generously) add that entity for you with all of its components.
Resolution:
To avoid this, add the parent entity first (metadata only), then create your new lookup field.