Let $f : X \rightarrow Y$ be a continuous map of topological spaces and $\mathcal{G}$ a sheaf on $Y$.
What exactly is $f^{-1}\mathcal{G}$? It seems like we should be able to describe the sections $f^{-1}\mathcal{G}(U)$ over some open subset $U$ as equivalence classes of germs, but I get confused when I try and think what exactly the elements of $f^{-1}\mathcal{G}(U)$ are.
Well, the definition is quite natural: To give a presheaf, you tell what its section are. So let $U$ be an open subset of $X$. Then
$$ f_{pre}^{-1}\mathcal G (U) := \lim_{V \supseteq f(U)} \mathcal G(V)$$
where $V$ ranges over the open subsets of $Y$ containing $f(U)$. The reason we have to get fancy and use limits, is that $f$ is not necessarily an open mapping. So what does this mean? Sections of $f_{pre}^{-1}\mathcal G(U)$ are equivalence classes $[s,V]$, where $[t,W] \sim [s,V]$ is there is some $U^\prime$ contained in both $V,W$ and containing $f(U)$ such that the restrictions of $s,t$ are equal in $U^\prime$. However, this is not a sheaf (if anyone has an example, where the sheaf properties fails, I'd be happy to see it), so we have to sheafify. But the essence is clear.
This is very technical, so lets see this for a few examples.
Also: When dealing with coherent sheaves, one defines $f^\ast \mathcal F := f^{-1}\mathcal F \otimes _{f^{-1}\mathcal O_Y } \mathcal O_X$. In the affine case, this just corresponds to tensor products of the corresponding modules. I.e. if a $A \to B$ is induced by $\mathrm{Spec} B \to \mathrm{Spec} A$, and $\mathcal F= M^\sim$ is the sheaf associated to the $A$-module $M$, then $f^\ast \mathcal F$is just the sheaf associated to the $B$-module $M \otimes_A B$.
A note about sheafyfing: Sometimes a presheaf is not a sheaf, so one must sheafify. The sheafification is "just" the best approximation of $\mathcal F$ such that the stalks are the same. Thus $f^{-1}_{pre}\mathcal G$ and its sheafification $f^{-1}\mathcal G$ agrees for sufficiently small open sets.