How to take a "snapshot" of the current versions of an assy and all children

Is there a way to generate a list of all the version #'s of an assy and all sub assy version #'s so that we can have a "snapshot" of an assembly at a current point in time. I know I can pack and go a copy of an assembly to archive it, but this erases all version history of the copy. What I really need is to be able to be able to see a "baseline" showing the current version #'s of an assy at a point in time. Is there a way to do this, or has anyone written a script that would do this? Thanks.