Why are non-singleton covering families often ignored? It seems to me that frequently when discussing stack conditions and descent, people consider only singleton covering families, i.e. there is some single covering map $U\to X$, for which one constructs a category of descent data out of $U$ and $U\times_X U$, and so on.  But many sites have non-singleton covering families $(U_i \to X)_{i\in I}$; why are those ignored?  Is there some deep reason why it suffices to consider singleton families?
My efforts to understand this so far have led me to think about "superextensive sites", which are sites whose covering families are generated by singleton covers together with inclusions into coproducts (the "extensive topology").  In particular, a fibered category is a stack on a superextensive site iff it is a stack for the singleton covers and also for the extensive topology.  But while stack conditions for the extensive topology have an exceptionally simple form (the compatibility conditions being mostly vacuous), they are still not automatic.  So why are they often not mentioned?
 A: In applications I've seen, what matters is the topos, not the site. If this is true for your applications, you should feel free to replace your site by any site that produces the same topos. I think you can always make the following conventions without changing the topos (edit: not true, you need some hypothesis on the site; see comments):


*

*If $\{U_i\to X\}_{i\in I}$ is a covering, then so is the singleton $\bigsqcup_I U_i\to X$.

*$\{U_i\to \bigsqcup_{j\in I} U_j\}_{i\in I}$ is always a covering.


After that, you can use convention 1 to replace any non-singleton covering by a singleton covering, which is easier to think about (at least easier to symbolically manipulate). But you do have to keep 2 around to be able to prove, for example, that $F(\bigsqcup_{I} U_i)=\prod_{I} F(U_i)$ for any sheaf $F$. As far as I can tell, everybody I know adopts these two conventions and then just talks about singleton covers.
An alternative (probably better) explanation comes from the sieve-theoretic formulation of Grothendieck topologies. All that matters about a covering is the sieve that it generates, and $\bigsqcup_I U_i\to X$ generates the same sieve as $\{U_i\to X\}_{i\in I}$ (edit: also not true; perhaps someone who understands the sieve approach could say what the right statement is). I think the canonical reference for this approach is SGA 4 ("sieve"="crible").
