Have you written features? If you haven't, you should be - because that is the right way to deploy stuff to your sites.
But if you have written them, I bet you have seen yourself trying various elements in the elements.xml file(s), guessing, and heck even reverse engineering parts of sharepoint that ship with sharepoint.
Here is a quick trick.
You can export the entire list schema as CAML using the following -
This is quite awesome, because it straight off gives you all the Fields, Views, and Content Types involved.
From here, you can copy paste stuff into your feature.