You can get the effect you want by creating a new throw-away branch from your current one and doing the git pull there. If you're unhappy with the results, the original branch is intact.
I have always relied on the inherent abilities of Git to get me back if a merge fails.
To estimate how the merge might occur, you can start like you did with:
$ git fetch origin branch # Fetch changes, but don't merge
$ git diff HEAD..origin/branch # Diff your current head to the fetched commit
... personal judgement of potential merge conflicts ...
$ git merge origin/branch # merge with the fetched commit
If things did not go as planned, look at your reflog and reset back to your desired state:
# fetch new commits from origin
$ git fetch
# check what are the differences and judge if safe to apply
$ git diff origin/master
# actually merge the fetched commits
$ git pull
OliverE is spot-on: git pull has a dry-run option, so I recommend git pull --dry-run -v to achieve the OP's purpose -- simple and direct. pull did not always have a dry-run option but in previous (and current) versions of git, fetch did (and does) have a dry-run option. Thus, an alternative approach is to do a git fetch --dry-run -v before you do your pull. Always better to check on an action before executing it, than having to spend time reverting.