I would say diet and vitamins.
Moisture, good care, etc... only keep and retain hair that's already there.
Adequate nutrient intake is where you can get growth. If your current diet doesn't provide you with enough vitamins, proteins, EFA, etc. for you follicles to work at their maximum, then you'll have sub-optimal hair growth. Most food we eat today in western countries is poor in nutrients due to pollution, transgenics, pesticides etc.
Hair, nails, etc. are non essential body functions, and your systems gives priority to such things as your brain, heart, etc. and the hair and nails get the left overs. Only if you feed yourself enough of everything will you get your optimal growth.
Daily recommended intakes (RDA etc.) are basically BS. What they mean is the amount you should take to stay away from illness, not the amount you should take to be at your optimal health.
Taking supplements will help you to track down where and what you are lacking. People like Bargello have only succeded in identifying what they were missing.
Whenever you can see improvements from taking vitamins, you are lacking!
F.