We can turn the question around to ask: why do we have projectives in module categories? One answer is that we know we have a plentiful supply of projectives because free modules are projective. Abstractly, we have a forgetful functor $U : \text{Mod}(R) \to \text{Set}$ with left adjoint $F : \text{Set} \to \text{Mod}(R)$. Then we have the following two results: 1. By the axiom of choice, every set is projective (in the sense that homs out of it preserve epimorphisms). 2. If a functor $U$ with a right adjoint preserves epimorphisms, then its left adjoint $F$ preserves projectives. Finally, it is straightforward to verify that $U$ in fact preserves epimorphisms (that is, epimorphisms of $R$-modules are surjective on underlying sets). Now what is the analogous situation for sheaves? We still have a forgetful functor $U : \text{Sh}(X) \to \text{Psh}(X)$, and it still has a left adjoint, namely sheafification. However, $U$ no longer preserves epimorphisms (this is exactly Dinakar's observation that an epimorphism of sheaves need not be an epimorphism of presheaves), so the above argument doesn't go through. For sheaves what we can instead do is the following. There is a different forgetful functor sending a sheaf on $X$ to its stalks; it can be thought of as pullback $p^{\ast}$ along the map $p : X_d \to X$ where $X_d$ denotes $X$ with the discrete topology. As a pullback, this functor has a *right* adjoint, namely pushforward $p_{\ast}$. The composite $p_{\ast} p^{\ast}$ is the <a href="https://en.wikipedia.org/wiki/Godement_resolution">Godement construction</a>. In any case, a dual argument to the above shows that because pullback $p^{\ast}$ preserves monomorphisms, its right adjoint $p_{\ast}$ preserves injectives. So now instead of a plentiful supply of projectives we have a plentiful supply of injectives.