From the accepted answer at Merge, update, and pull Git branches without using checkouts,
You cannot merge a branch B into branch A without checking out A first if it would result in a non-fast-forward merge. This is because a working copy is needed to resolve any potential conflicts.
Would I be correct to extrapolate and say that you also can't git cherry-pick
onto a destination that is not checked out?