I'm interested in the question of "compatible" morphisms of stalks. Specifically, given two sheaves $\mathscr{F}$ and $\mathscr{G}$ on a space $X$, if we have morphisms $\phi_p : \mathscr{F}_p \to \mathscr{G}_p$, what are conditions on $\phi_p$ that guarantee the existence of a (unique?) morphism $\phi : \mathscr{F} \to \mathscr{G}$ such that $\phi$ induces $\phi_p$ on every stalk?
I think there should be some sort of compatibility condition such as: for every $s_p \in \mathscr{G}_p$, there exists an open set $U$ and $s \in \mathscr{G}(U)$ whose germ is $s_p$ such that there exists $t \in \mathscr{F}(U)$ with $\{t_q = \phi_q^{-1}(s_q) : \text{ for all }q \in U\}$, but this seems to require that $\phi_p$ be surjective, which isn't right. Does anyone know a sufficient condition?