[proofplan]
We use the clutching construction for vector bundles over a space obtained by gluing two contractible pieces along their common boundary. For $S^2$, the two hemispheres are contractible disks and their common boundary is the equator $S^1$, so complex line bundles are classified by homotopy classes of clutching maps $S^1 \to \mathbb{C}^*$. The deformation retraction $\mathbb{C}^* \to S^1$ reduces the target to $S^1$, and homotopy classes of maps $S^1 \to S^1$ are classified by degree. Finally, the map $z \mapsto z^m$ has degree $m$, giving one representative for each integer.
[/proofplan]
[step:Pass from line bundles on $S^2$ to clutching maps on the equator]
Let $D_+ \subset S^2$ denote the closed northern hemisphere, let $D_- \subset S^2$ denote the closed southern hemisphere, and let $E := D_+ \cap D_- = S^1$ denote the equator. The pair $(D_+,D_-)$ is the usual clutching decomposition of $S^2$ as two disks glued along their common boundary $E$. For an integer $r \geq 1$, define $GL_r(\mathbb{C})$ to be the group of invertible complex $r \times r$ matrices. We use the Clutching Classification Over Spheres in this disk-boundary form: if a rank-$r$ complex vector bundle is trivial on both disks, then its isomorphism class is represented by a continuous transition map $g:E\to GL_r(\mathbb{C})$, and changing the two trivializations by continuous gauge maps $a_+:D_+\to GL_r(\mathbb{C})$ and $a_-:D_-\to GL_r(\mathbb{C})$ replaces $g$ by the map $h:E\to GL_r(\mathbb{C})$ defined by
\begin{align*}
h(x)=a_-(x)g(x)a_+(x)^{-1}.
\end{align*}
The hypotheses of the clutching classification are satisfied here because $D_+$ and $D_-$ are closed disks, their common boundary is the equator $E$, and every complex line bundle over a disk is trivial. For the last assertion, if $D$ is a disk and $L \to D$ is a complex line bundle, choose a contraction $C:D\times[0,1]\to D$ from $\operatorname{id}_D$ to the constant map $c_p:D\to D$ at a point $p\in D$, and let $L_p$ denote the fiber of $L$ over $p$. The homotopy invariance of pullback bundles gives $L\cong c_p^*(L_p)$, and the pullback $c_p^*(L_p)$ is the product bundle $D\times L_p\to D$.
Applied to complex line bundles over
\begin{align*}
S^2 = D_+ \cup D_-,
\end{align*}
this theorem has $r=1$ and $GL_1(\mathbb{C})=\mathbb{C}^*$. Since $D_+$ and $D_-$ are contractible, every complex line bundle over either hemisphere is trivial. Moreover, the restrictions $a_+|_E$ and $a_-|_E$ extend over disks, so they are null-homotopic as maps $E\to\mathbb{C}^*$; because $\mathbb{C}^*$ is path-connected, the above gauge change is homotopic to $g$. Thus the clutching classification reduces here to a bijection between isomorphism classes of complex line bundles on $S^2$ and unbased homotopy classes of continuous clutching maps $g:E \to \mathbb{C}^*$.
Concretely, a continuous map $g:S^1 \to \mathbb{C}^*$ defines a complex line bundle $L_g \to S^2$ by gluing the product bundles $D_+ \times \mathbb{C}$ and $D_- \times \mathbb{C}$ along the equator using
\begin{align*}
(x,v)_+ \sim (x,g(x)v)_-
\end{align*}
for every $x \in S^1$ and every $v \in \mathbb{C}$. The clutching theorem says that $L_g \cong L_h$ if and only if $g$ and $h$ are homotopic as maps $S^1 \to \mathbb{C}^*$, and every complex line bundle over $S^2$ is isomorphic to some $L_g$.
[guided]
The point of cutting $S^2$ into hemispheres is that line bundles over each hemisphere carry no twisting: the twisting can only occur when the two product pieces are reassembled along their common boundary. Let $D_+$ be the closed northern hemisphere, let $D_-$ be the closed southern hemisphere, and let $E:=D_+ \cap D_-=S^1$ be the equator.
For an integer $r \geq 1$, define $GL_r(\mathbb{C})$ to be the group of invertible complex $r \times r$ matrices. We invoke the Clutching Classification Over Spheres for vector bundles in the disk-boundary form. The hypotheses are satisfied because $S^2=D_+\cup D_-$, the sets $D_+$ and $D_-$ are disks, their common boundary is $E=S^1$, and the restrictions of a complex line bundle to the two disks are trivial. Here is the triviality argument. If $D$ is a disk and $L\to D$ is a complex line bundle, choose a contraction $C:D\times[0,1]\to D$ from $\operatorname{id}_D$ to the constant map $c_p:D\to D$ at a point $p\in D$, and let $L_p$ denote the fiber of $L$ over $p$. The homotopy invariance of pullback bundles gives $L\cong c_p^*(L_p)$. Since $c_p^*(L_p)$ is the product bundle $D\times L_p\to D$, the bundle $L$ is trivial over $D$. The theorem says that such a bundle is obtained by gluing two product bundles along $E$ using a continuous transition map $g:E\to GL_r(\mathbb{C})$, and that a change of trivialization on the two sides by continuous gauge maps $a_+:D_+\to GL_r(\mathbb{C})$ and $a_-:D_-\to GL_r(\mathbb{C})$ changes $g$ to the map $h:E\to GL_r(\mathbb{C})$ defined by
\begin{align*}
h(x)=a_-(x)g(x)a_+(x)^{-1}.
\end{align*}
For complex line bundles, $r=1$ and the structure group is
\begin{align*}
GL_1(\mathbb{C})=\mathbb{C}^*.
\end{align*}
The only remaining point is the [equivalence relation](/page/Equivalence%20Relation). If $a_+:D_+\to\mathbb{C}^*$ and $a_-:D_-\to\mathbb{C}^*$ are gauge maps, then $a_+|_E$ and $a_-|_E$ extend over disks, so they are null-homotopic as maps $E\to\mathbb{C}^*$. Since $\mathbb{C}^*$ is path-connected, the constants to which they contract may be further joined to $1$. Hence the gauge-modified transition function is homotopic to the original transition function. Therefore, in this special case, clutching classes are exactly unbased homotopy classes of continuous maps $g:S^1\to\mathbb{C}^*$.
Given such a map $g$, define $L_g \to S^2$ by taking the disjoint union of the two product bundles $D_+ \times \mathbb{C}$ and $D_- \times \mathbb{C}$ and imposing the equivalence relation
\begin{align*}
(x,v)_+ \sim (x,g(x)v)_-
\end{align*}
for $x \in S^1$ and $v \in \mathbb{C}$. Since $g(x) \neq 0$ for every $x \in S^1$, multiplication by $g(x)$ is a complex-linear isomorphism of the fiber $\mathbb{C}$. Thus the gluing produces a complex line bundle. The clutching theorem also identifies when two such constructions give the same bundle: $L_g$ and $L_h$ are isomorphic exactly when $g$ and $h$ are homotopic as maps from $S^1$ to $\mathbb{C}^*$. Therefore the set of isomorphism classes of complex line bundles over $S^2$ is in bijection with $[S^1,\mathbb{C}^*]$, the set of unbased homotopy classes of continuous maps $S^1\to\mathbb{C}^*$.
[/guided]
[/step]
[step:Replace $\mathbb{C}^*$ by $S^1$ using the radial deformation retraction]
Define the radial projection $\rho:\mathbb{C}^* \to S^1$ by the formula
\begin{align*}
\rho(z)=\frac{z}{|z|}.
\end{align*}
Let $\iota:S^1 \to \mathbb{C}^*$ be the inclusion map, so $\iota(z)=z$ for $z \in S^1$. Then $\rho \circ \iota = \operatorname{id}_{S^1}$. Also define $H:\mathbb{C}^* \times [0,1] \to \mathbb{C}^*$ by
\begin{align*}
H(z,t)=\left((1-t)+\frac{t}{|z|}\right)z.
\end{align*}
For every $z \in \mathbb{C}^*$ and $t \in [0,1]$, the scalar $(1-t)+t/|z|$ is positive, so $H(z,t) \in \mathbb{C}^*$. Moreover,
\begin{align*}
H(z,0)=z.
\end{align*}
At the other endpoint,
\begin{align*}
H(z,1)=\frac{z}{|z|}=(\iota \circ \rho)(z).
\end{align*}
Thus $\iota \circ \rho$ is homotopic to $\operatorname{id}_{\mathbb{C}^*}$, so $\rho$ and $\iota$ exhibit $S^1$ as a deformation retract of $\mathbb{C}^*$. Hence $\rho$ induces a bijection
\begin{align*}
[S^1,\mathbb{C}^*] \to [S^1,S^1]
\end{align*}
between unbased homotopy classes of continuous maps.
[guided]
The target $\mathbb{C}^*$ has no zero, so every nonzero complex number can be separated into its magnitude and its direction. Define the radial projection $\rho:\mathbb{C}^*\to S^1$ by the formula
\begin{align*}
\rho(z)=\frac{z}{|z|}.
\end{align*}
This map records only the direction of $z$. Let $\iota:S^1\to\mathbb{C}^*$ be the inclusion map, so $\iota(z)=z$ for $z\in S^1$. Then $\rho\circ\iota=\operatorname{id}_{S^1}$.
To prove that replacing $\mathbb{C}^*$ by $S^1$ does not change homotopy classes, we must also show that $\iota\circ\rho$ is homotopic to $\operatorname{id}_{\mathbb{C}^*}$. Define $H:\mathbb{C}^*\times[0,1]\to\mathbb{C}^*$ by
\begin{align*}
H(z,t)=\left((1-t)+\frac{t}{|z|}\right)z.
\end{align*}
For $z\in\mathbb{C}^*$ and $t\in[0,1]$, the real scalar $(1-t)+t/|z|$ is positive. Therefore $H(z,t)$ is never zero, so $H$ really does take values in $\mathbb{C}^*$. At $t=0$ it gives
\begin{align*}
H(z,0)=z,
\end{align*}
and at $t=1$ it gives
\begin{align*}
H(z,1)=\frac{z}{|z|}=(\iota\circ\rho)(z).
\end{align*}
Thus $H$ is a homotopy from $\operatorname{id}_{\mathbb{C}^*}$ to $\iota\circ\rho$. Consequently $\rho$ and $\iota$ are homotopy inverses and exhibit $S^1$ as a deformation retract of $\mathbb{C}^*$. Composition with $\rho$ therefore induces a bijection
\begin{align*}
[S^1,\mathbb{C}^*]\to[S^1,S^1]
\end{align*}
on unbased homotopy classes.
[/guided]
[/step]
[step:Classify maps $S^1 \to S^1$ by degree]
We use the circle-map degree classification theorem: the degree map
\begin{align*}
\deg:[S^1,S^1] \to \mathbb{Z}
\end{align*}
is a bijection on unbased homotopy classes of continuous maps. This is the standard classification of maps $S^1\to S^1$ obtained from the lifting theory of the universal covering $\mathbb{R}\to S^1$ and the degree of a map. Therefore the composite map from $[S^1,\mathbb{C}^*]$ to $\mathbb{Z}$, defined by sending $[g]$ to $\deg(\rho \circ g)$, is a bijection. By definition, this integer is the [winding number](/page/Winding%20Number) $\operatorname{wind}(g)$ of the clutching map $g:S^1 \to \mathbb{C}^*$.
[guided]
After the deformation retraction step, the classification problem has become the familiar problem of classifying continuous maps from the circle to itself. The circle-map degree classification theorem states that the degree map
\begin{align*}
\deg:[S^1,S^1]\to\mathbb{Z}
\end{align*}
is a bijection on unbased homotopy classes. This theorem is the standard consequence of lifting maps $S^1\to S^1$ to the universal covering $\mathbb{R}\to S^1$ and then reading the endpoint displacement as the degree of a map. In other words, two continuous maps $f:S^1\to S^1$ and $k:S^1\to S^1$ are homotopic if and only if $\deg(f)=\deg(k)$, and every integer occurs as the degree of some circle map.
For a clutching map $g:S^1\to\mathbb{C}^*$, first project it radially to the circle by forming $\rho\circ g:S^1\to S^1$. The preceding step proves that this operation preserves exactly the relevant homotopy information, because $\rho:\mathbb{C}^*\to S^1$ is a homotopy equivalence. We therefore define the [winding number](/page/Winding%20Number) of $g$ by
\begin{align*}
\operatorname{wind}(g)=\deg(\rho\circ g).
\end{align*}
Since $[S^1,\mathbb{C}^*]\to[S^1,S^1]$ is a bijection and $\deg:[S^1,S^1]\to\mathbb{Z}$ is a bijection, their composite is a bijection from clutching homotopy classes to $\mathbb{Z}$.
[/guided]
[/step]
[step:Identify the representative with invariant $m$]
For each $m \in \mathbb{Z}$, define $g_m:S^1 \to \mathbb{C}^*$ by
\begin{align*}
g_m(z)=z^m.
\end{align*}
When $m<0$, this means $z^m=(z^{-1})^{|m|}$; this is well-defined on $S^1$ because $z\neq 0$ for every $z\in S^1$. Since $|z|=1$ for $z \in S^1$, the image of $g_m$ lies in $S^1 \subset \mathbb{C}^*$, so
\begin{align*}
\rho \circ g_m = g_m.
\end{align*}
The map $g_m:S^1 \to S^1$ has degree $m$, hence
\begin{align*}
\operatorname{wind}(g_m)=\deg(\rho \circ g_m)=m.
\end{align*}
Because the preceding step gives a bijection from clutching homotopy classes to $\mathbb{Z}$, every complex line bundle over $S^2$ is isomorphic to exactly one bundle $L_{g_m}$ with $m \in \mathbb{Z}$. This proves that isomorphism classes of complex line bundles over $S^2$ are classified by the winding number of the clutching map.
[/step]