David,
i would just say, really always use in what ever you do (commit or update) use the synchronize view.
Then you always have an overview of what exactly is coming in and what you want to commit
What i always have is a pinned synchronization in the synchronization view over all my projects (for you solution and modules)
and when i want to see incoming changes i just press synchronize. Then you see all incoming changes you can review it then say ok this is what i want
Turn on the change sets (a button the the toolbar of the view). Then everything is grouped by a commit of your co worker.
When you want to commit stuff, press first the synchronize button to see if there are any updates, especially updates that also work on the files you touched!