Paso $-1$ (innecesaria). Mostrar que el conjunto de secciones Hom$(\mathscr F|_U,\mathscr G|_U)$ sobre el subconjunto $U\subset X$ es un grupo abelian (de modo que $\mathcal Hom(\mathscr F,\mathscr G)$ será una gavilla de abelian grupos). Esto es fácil.
Paso $0$. $U\mapsto \textrm{Hom}(\mathscr F|_U,\mathscr G|_U)$ es un presheaf (nota: como se señaló en un comentario, una sección de este presheaf es una de morfismos de poleas!). La restricción se define como sigue: fijo $U$, y un subconjunto $V\subset U$, una sección de $\sigma\in\textrm{Hom}(\mathscr F|_U,\mathscr G|_U)$ $\sigma|_V\in \textrm{Hom}(\mathscr F|_V,\mathscr G|_V)$ donde $\sigma|_V$ es el de morfismos de poleas en $V$ definido por $\sigma|_V(W)=\sigma(W):\mathscr F(W)\to\mathscr G(W)$ para cualquier subconjunto $W\subset V$ (que también está abierto en $U$! por esta razón, las plazas, los que deben de viajar, más de $V$, hacer conmutar debido a que ya se conmutó $U$).
Paso $1$. La primera gavilla axioma. Deje $U=\bigcup_{i\in I} U_i$ libre de cubrir un subconjunto abierto $U\subset X$. Deje $\sigma: \mathscr F|_U\to\mathscr G|_U$ ser una sección tal que $\sigma_i:=\sigma|_{U_i}=0$ todos los $i\in I$. Queremos mostrar que $\sigma=0$.
Deje $g\in\mathscr F(U)$ ser una sección fija. A continuación, mira el (cero!!!) morfismos de grupos de abelian
$$
\sigma_i(U_i):\mathscr F(U_i)\a\mathscr G(U_i) \,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,g_i\mapsto 0.
$$
Ahora, $\{g_i\}_{i\in I}$ coinciden en las coincidencias $U_{ij}:=U_i\cap U_j$ por cada $i\neq j$, y debido a $\mathscr F$ es una gavilla, la sección $g$ tiene la propiedad
$$
\sigma(U)(g)=0.
$$
Debido a esta posición para cada $g\in\mathscr F(U)$, llegamos a la conclusión de que $\sigma(U)=0$, por lo tanto $\sigma=0$, como se reivindica.
Paso 2. La segunda gavilla axioma.
Vamos de nuevo a $U=\bigcup_{i\in I} U_i$ libre de cubrir un subconjunto abierto $U\subset X$, y deje $\{\phi_i:\mathscr F|_{U_i}\to\mathscr G|_{U_i}\}_{i\in I}$ ser una familia de secciones que $\phi_i=\phi_j$$U_{ij}$. Queremos un global $\phi$ (sección sobre $U$) tal que $\phi|_{U_i}=\phi_i$.
Si $V\subset U$, $A_i:=U_i\cap V$ cubierta $V$. Así que vamos a arreglar una sección de $g\in \mathscr F(V)$ y pongamos $g_i:=g|_{A_i}$. Podemos darle un nombre (decir $t_i$) a la imagen de $g_i$ bajo $\phi(A_i)$, es decir,
$$
\phi_i(A_i):\mathscr F(A_i)\a\mathscr G(A_i) \,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,g_i\mapsto t_i.
$$
La compatibilidad de las $\phi_i$'s implica la de la $t_i$'s, y desde $\mathscr G$ es una gavilla existe una sección global $t\in \mathscr G(V)$ tal que $t|_{A_i}=t_i$ por cada $i$. Podemos definir el $\phi$ que estamos buscando por
$$
\phi(V):\mathscr F(V)\a\mathscr G(V) \,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\, g\mapsto t.
$$
para cada $V\subset U$. De esta manera, por construcción, $\phi|_{U_i}=\phi_i$, como quería.