I have an automated build system using CruiseControl. I am using the SvnRevisionLabeller to to get the version string to use. With this string I can use nant to update AssemblyI
I always have it checked in. In fact I believe this is the default behavior with Team System Source Control.