Drupal Commerce - add fields to product or product display?
I add all fields that will never change depending on the variations to the product display. For the fields that will change based on variation, those fields go on the product itself.

Example:

A tee-shirt from "Rockstar Threads," a brand, and a tee-shirt from "Basic Clothes," another brand. Each shirt has two colors each, red and black.

The red Rockstar shirt is the same brand as the black Rockstar shirt.
The red Basic shirt is the same brand as the black Basic shirt.

So the "brand" field gets attached to the product display. The "color" field gets attached to the product. Now, when I create a new product, for each variation I can add a color, but I only choose a brand once since it's attached to the display. All in all, anything that will remain constant across all variations is attached to the display. Anything that will change, attach to the product.