You may not be used to the way Team Foundation Server handles source control. It's not like SourceSafe where "Get Latest" means replace whatever you have with the latest code. With TFS, "Get Latest" means synchronize your own latest code with the latest changes made by other users, which means, if you have made changes to files locally (or TFS believes you have), then those changes will not be overwritten, but rather merged with any changes in TFS' source control. Often times, if you Undo your changes, then TFS will reflect just the latest code in source control. But even if you don't have the file checked out, there can be local changes that don't correspond to any changes in TFS. I think I have also observed that this will cause TFS to merge those changes rather than overwrite them. So you have to be careful not to edit local files outside of TFS' control (it really likes to be in control, but does a much better job of it than older source control software, I've found, tracking move operations, renames etc).
Anyway, if you do get out of sync, you can either delete your local files or tell it to "Get Specific Version..." and then tell it to get the latest version and check the boxes to force overwriting of your local files no matter what.