You can diff directly against the new tree. git diff origin/master
compares the working directory against the upstream changes (the tree you just tried to merge) and so should answer your question about whether the changes match and whether it's safe to throw away your local changes.
The git documentation warns against doing pulls and merges with uncommited changes; I don't think you'll be able to get the automatic behaviour you're asking for.