only stash and unstash if actual changes