Proof by naive method.
In this proof method we proceed in stages:
First, given $x$ lying over $U$ and any object $y$ of $\mathcal{S}$, we say that two morphisms $a, b : x \to y$ of $\mathcal{S}$ lying over the same arrow of $\mathcal{C}$ are locally equal if there exists a covering $\{ f_ i : U_ i \to U\} $ of $\mathcal{C}$ such that the compositions
\[ f_ i^*x \to x \xrightarrow {a} y, \quad f_ i^*x \to x \xrightarrow {b} y \]
are equal. This gives an equivalence relation $\sim $ on arrows of $\mathcal{S}$. If $b \sim b'$ then $a \circ b \circ c \sim a \circ b' \circ c$ (verification omitted). Hence we can quotient out by this equivalence relation to obtain a new category $\mathcal{S}^1$ over $\mathcal{C}$ together with a morphism $G^1 : \mathcal{S} \to \mathcal{S}^1$.
One checks that $G^1$ preserves strongly cartesian morphisms and that $\mathcal{S}^1$ is a fibred category over $\mathcal{C}$. Checks omitted. Thus we reduce to the case where locally equal morphisms are equal.
Next, we add morphisms as follows. Given $x$ lying over $U$ and any object $y$ of lying over $V$ a locally defined morphism from $x$ to $y$ is given by
a morphism $f : U \to V$,
a covering $\{ f_ i : U_ i \to U\} $ of $U$, and
morphisms $a_ i : f_ i^*x \to y$ with $p(a_ i) = f \circ f_ i$
with the property that the compositions
\[ (f_ i \times f_ j)^*x \to f_ i^*x \xrightarrow {a_ i} y, \quad (f_ i \times f_ j)^*x \to f_ j^*x \xrightarrow {a_ j} y \]
are equal. Note that a usual morphism $a : x \to y$ gives a locally defined morphism $(p(a) : U \to V, \{ \text{id}_ U\} , a)$. We say two locally defined morphisms $(f, \{ f_ i : U_ i \to U\} , a_ i)$ and $(g, \{ g_ j : U'_ j \to U\} , b_ j)$ are equal if $f = g$ and the compositions
\[ (f_ i \times g_ j)^*x \to f_ i^*x \xrightarrow {a_ i} y, \quad (f_ i \times g_ j)^*x \to g_ j^*x \xrightarrow {b_ j} y \]
are equal (this is the right condition since we are in the situation where locally equal morphisms are equal). To compose locally defined morphisms $(f, \{ f_ i : U_ i \to U\} , a_ i)$ from $x$ to $y$ and $(g, \{ g_ j : V_ j \to V\} , b_ j)$ from $y$ to $z$ lying over $W$, just take $g \circ f : U \to W$, the covering $\{ U_ i \times _ V V_ j \to U\} $, and as maps the compositions
\[ x|_{U_ i \times _ V V_ j} \xrightarrow {\text{pr}_0^*a_ i} y|_{V_ j} \xrightarrow {b_ j} z \]
We omit the verification that this is a locally defined morphism.
One checks that $\mathcal{S}^2$ with the same objects as $\mathcal{S}$ and with locally defined morphisms as morphisms is a category over $\mathcal{C}$, that there is a functor $G^2 : \mathcal{S} \to \mathcal{S}^2$ over $\mathcal{C}$, that this functor preserves strongly cartesian objects, and that $\mathcal{S}^2$ is a fibred category over $\mathcal{C}$. Checks omitted. This reduces one to the case where the morphism presheaves of $\mathcal{S}$ are all sheaves, by checking that the effect of using locally defined morphisms is to take the sheafification of the (separated) morphisms presheaves.
Finally, in the case where the morphism presheaves are all sheaves we have to add objects in order to make sure descent conditions are effective in the end result. The simplest way to do this is to consider the category $\mathcal{S}'$ whose objects are pairs $(\mathcal{U}, \xi )$ where $\mathcal{U} = \{ U_ i \to U\} $ is a covering of $\mathcal{C}$ and $\xi = (X_ i, \varphi _{ii'})$ is a descent datum relative $\mathcal{U}$. Suppose given two such data $(\mathcal{U}, \xi ) = (\{ f_ i : U_ i \to U\} , x_ i, \varphi _{ii'})$ and $(\mathcal{V}, \eta ) = (\{ g_ j : V_ j \to V\} , y_ j, \psi _{jj'})$. We define
\[ \mathop{\mathrm{Mor}}\nolimits _{\mathcal{S}'}((\mathcal{U}, \xi ), (\mathcal{V}, \eta )) \]
as the set of $(f, a_{ij})$, where $f : U \to V$ and
\[ a_{ij} : x_ i|_{U_ i \times _ V V_ j} \longrightarrow y_ j \]
are morphisms of $\mathcal{S}$ lying over $U_ i \times _ V V_ j \to V_ j$. These have to satisfy the following condition: for any $i, i' \in I$ and $j, j' \in J$ set $W = (U_ i \times _ U U_{i'}) \times _ V (V_ j \times _ V V_{j'})$. Then
\[ \xymatrix{ x_ i|_ W \ar[r]_{a_{ij}|_ W} \ar[d]_{\varphi _{ii'}|_ W} & y_ j|_ W \ar[d]^{\psi _{jj'}|_ W} \\ x_{i'}|_ W \ar[r]^{a_{i'j'}|_ W} & y_{j'}|_ W } \]
commutes. At this point you have to verify the following things:
there is a well defined composition on morphisms as above,
this turns $\mathcal{S}'$ into a category over $\mathcal{C}$,
there is a functor $G : \mathcal{S} \to \mathcal{S}'$ over $\mathcal{C}$,
for $x, y$ objects of $\mathcal{S}$ we have $\mathop{\mathrm{Mor}}\nolimits _\mathcal {S}(x, y) = \mathop{\mathrm{Mor}}\nolimits _{\mathcal{S}'}(G(x), G(y))$,
any object of $\mathcal{S}'$ locally comes from an object of $\mathcal{S}$, i.e., part (2) of the lemma holds,
$G$ preserves strongly cartesian morphisms,
$\mathcal{S}'$ is a fibred category over $\mathcal{C}$, and
$\mathcal{S}'$ is a stack over $\mathcal{C}$.
This is all not hard but there is a lot of it. Details omitted.
$\square$
Less naive proof.
Here is a less naive proof. By Categories, Lemma 4.36.4 there exists an equivalence of fibred categories $\mathcal{S} \to \mathcal{S}'$ where $\mathcal{S}'$ is a split fibred category, i.e., one in which the pullback functors compose on the nose. Obviously the lemma for $\mathcal{S}'$ implies the lemma for $\mathcal{S}$. Hence we may think of $\mathcal{S}$ as a presheaf in categories.
Consider the $2$-category $\textit{Cat}$ temporarily as a category by forgetting about $2$-morphisms. Let us think of a category as a quintuple $(\text{Ob}, \text{Arrows}, s, t, \circ )$ as in Categories, Section 4.2. Consider the forgetful functor
\[ forget : \textit{Cat} \to \textit{Sets} \times \textit{Sets}, \quad (\text{Ob}, \text{Arrows}, s, t, \circ ) \mapsto (\text{Ob}, \text{Arrows}). \]
Then $forget$ is faithful, $\textit{Cat}$ has limits and $forget$ commutes with them, $\textit{Cat}$ has directed colimits and $forget$ commutes with them, and $forget$ reflects isomorphisms. We can sheafify presheaves with values in $\textit{Cat}$, and by an argument similar to the one in the first part of Sites, Section 7.44 the result commutes with $forget$. Applying this to $\mathcal{S}$ we obtain a sheafification $\mathcal{S}^\# $ which has a sheaf of objects and a sheaf of morphisms both of which are the sheafifications of the corresponding presheaves for $\mathcal{S}$. In this case it is quite easy to see that the map $\mathcal{S} \to \mathcal{S}^\# $ has the properties (1) and (2) of the lemma.
However, the category $\mathcal{S}^\# $ may not yet be a stack since, although the presheaf of objects is a sheaf, the descent condition may not yet be satisfied. To remedy this we have to add more objects. But the argument above does reduce us to the case where $\mathcal{S} = \mathcal{S}_ F$ for some sheaf(!) $F : \mathcal{C}^{opp} \to \textit{Cat}$ of categories. In this case consider the functor $F' : \mathcal{C}^{opp} \to \textit{Cat}$ defined by
The set $\mathop{\mathrm{Ob}}\nolimits (F'(U))$ is the set of pairs $(\mathcal{U}, \xi )$ where $\mathcal{U} = \{ U_ i \to U\} $ is a covering of $U$ and $\xi = (x_ i, \varphi _{ii'})$ is a descent datum relative to $\mathcal{U}$.
A morphism in $F'(U)$ from $(\mathcal{U}, \xi )$ to $(\mathcal{V}, \eta )$ is an element of
\[ \mathop{\mathrm{colim}}\nolimits \mathop{\mathrm{Mor}}\nolimits _{DD(\mathcal{W})}(a^*\xi , b^*\eta ) \]
where the colimit is over all common refinements $a : \mathcal{W} \to \mathcal{U}$, $b : \mathcal{W} \to \mathcal{V}$. This colimit is filtered (verification omitted). Hence composition of morphisms in $F(U)$ is defined by finding a common refinement and composing in $DD(\mathcal{W})$.
Given $h : V \to U$ and an object $(\mathcal{U}, \xi )$ of $F'(U)$ we set $F'(h)(\mathcal{U}, \xi )$ equal to $(V \times _ U \mathcal{U}, \text{pr}_1^*\xi )$. More precisely, if $\mathcal{U} = \{ U_ i \to U\} $ and $\xi = (x_ i, \varphi _{ii'})$, then $V \times _ U \mathcal{U} = \{ V \times _ U U_ i \to V\} $ which comes with a canonical morphism $\text{pr}_1 : V \times _ U \mathcal{U} \to \mathcal{U}$ and $\text{pr}_1^*\xi $ is the pullback of $\xi $ with respect to this morphism (see Definition 8.3.4).
Given $h : V \to U$, objects $(\mathcal{U}, \xi )$ and $(\mathcal{V}, \eta )$ and a morphism between them, represented by $a : \mathcal{W} \to \mathcal{U}$, $b : \mathcal{W} \to \mathcal{V}$, and $\alpha : a^*\xi \to b^*\eta $, then $F'(h)(\alpha )$ is represented by $a' : V \times _ U\mathcal{W} \to V \times _ U\mathcal{U}$, $b' : V \times _ U\mathcal{W} \to V \times _ U\mathcal{V}$, and the pullback $\alpha '$ of the morphism $\alpha $ via the map $V \times _ U \mathcal{W} \to \mathcal{W}$. This works since pullbacks in $\mathcal{S}_ F$ commute on the nose.
There is a map $F \to F'$ given by associating to an object $x$ of $F(U)$ the object $(\{ U \to U\} , (x, triv))$ of $F'(U)$. At this point you have to check that the corresponding functor $\mathcal{S}_ F \to \mathcal{S}_{F'}$ has properties (1) and (2) of the lemma, and finally that $\mathcal{S}_{F'}$ is a stack. Details omitted.
$\square$
Comments (0)
There are also: