If you have a variable that is used in all environments, then put that variable in the “default” profile. If the variable does not change in any other environment, then that is the only placement you need. As an example, since I am the Tester, I have my user id, “gTestId”, only in the “default” profile and I don’t need to overwrite it in any other profile.
Edit: All variables that will be initialized with only an empty value, or 0, are only in the “default” profile.
Those variables that need different values for an environment, then duplicate the variables in those profiles giving the variable the appropriate value for each environment. For instance, I need several different URLs, one for each of my environments, so I have the same variable, “gSiteUrl”, in each of my other profiles–Stage, Test, Dev–giving each profile a different value.
Edit: All variables that need to be initialized with different values are duplicated in the other profiles.
I may have 60 variables in the “default” profile and only 10 in my other ones that overwrite the variable’s value of the “default” profile.