Some pictures to keep in mind when it comes to covers and path lifting:
Picture to keep in mind
A more complicated situation
Useful Facts
When covering spaces are involved in any way, try computing Euler characteristics  this sometimes yields nice numerical constraints.
For \(p: A \xrightarrow{} B\) an \(n{\hbox{}}\)fold cover, \begin{align*} \chi(A) = n\, \chi(B) .\end{align*}
Covering spaces of orientable manifolds are orientable.
The preimage of a boundary point under a covering map must also be a boundary point
Normal subgroups correspond to normal/regular coverings, where automorphisms act freely/transitively. These are “maximally symmetric”.
Universal Covers
A covering \(\tilde X \xrightarrow{p} X\) is Galois (or normal/regular) over \((X, x_0)\) iff \(\mathop{\mathrm{Deck}}(\tilde X)\) acts transitively on the fibers: for any two lifts \(\tilde x_1, \tilde x_2\in \tilde X\) of \(x_0 \in X\), there is a \(\psi\in \mathop{\mathrm{Deck}}(\tilde X)\) with \(\psi(\tilde x_1) = \tilde x_2\).
If \(X\) is
 Pathconnected,
 Locally pathconnected, and
 Semilocally simply connected,
then \(X\) admits a universal cover \(\widehat{X} \to X\): if \(C \xrightarrow{q} X\) is any other covering map with \(C\) connected, then there exists a covering map \(\tilde p: \widehat{X} \to C\) making the following diagram commute:
That is, any other cover \(C\) of \(X\) is itself covered by \(\widehat{X}\). Note that by the universal property, \(\widehat{X}\) is unique up to homeomorphism when it exists.
Moreover, letting \(\tilde X \to X\) be an arbitrary pathconnected cover and \(H\coloneqq p_* \pi_1(\tilde X; \tilde x_0), G\coloneqq\pi_1(X; x_0)\),
 The \(\tilde X\to X\) is Galois iff \(H{~\trianglelefteq~}G\),
 \(\mathop{\mathrm{Deck}}(\tilde X\to X) \cong N_{G}(H)/H\) where \(N\) is the normalizer in \(G\) of \(H\),
 \(\mathop{\mathrm{Deck}}(\tilde X\to X) \cong G/H\) if \(\tilde X\to X\) is Galois,
 \(\mathop{\mathrm{Deck}}(\widehat{X} \to X) \cong G\).
A Galois cover \(\tilde X\to X\) with \(\mathop{\mathrm{Deck}}(\tilde X) = G\) is equivalently a principal \(G{\hbox{}}\)bundle for a discrete \(G\):
Covering spaces of \(X\) are classified by subgroups of \(\pi_1(X)\): \begin{align*} \left\{{\substack{ \text{Covering spaces $\tilde X\to X$} }}\right\}/\text{Isomorphisms over }X &\rightleftharpoons \left\{{\substack{ \text{Subgroups } H\leq \pi_1(X) }}\right\}/\text{Conjugacy} \\ \\ \left\{{\substack{ \text{Galois covering spaces $\tilde X\to X$} }}\right\} &\rightleftharpoons \left\{{\substack{ \text{Normal subgroups } H {~\trianglelefteq~}\pi_1(X) }}\right\} \end{align*}
Let \(p:\tilde X \to X\) be any covering space, \(F: Y \times I \to X\) be any homotopy, and \(\tilde F_0: Y\to \tilde X\) be any lift of \(F_0\). Then there exists a unique homotopy \(\tilde F:Y\to \tilde X\) of \(\tilde F_0\) that lifts \(F\):
If \(f: Y\to X\) with \(Y\) pathconnected and locally pathconnected, then there exists a unique lift \(\tilde f: Y\to \tilde X\) if and only if \(f_*(\pi_1(Y)) \subset \pi_*(\pi_1 (\tilde X))\):
Moreover, lifts are unique if they agree at a single point.
Note that if \(Y\) is simply connected, then \(\pi_1(Y) = 0\) and this holds automatically!
Given a covering space \(\tilde X \xrightarrow{p} X\), the induced map \(p^*: \pi_1(\tilde X) \to \pi_1(X)\) is injective. The image consists of classes \([\gamma]\) whose lifts to \(\tilde X\) are again loops.
For \(\tilde X \xrightarrow{p} X\) a covering space with
 \(\tilde X\) pathconnected,
 \(X\) pathconnected and locally pathconnected,
letting \(H\) be the image of \(\pi_1(\tilde X)\) in \(\pi_1(X)\), we have

\(\tilde X\) is normal if and only if \(H{~\trianglelefteq~}\pi_1(X)\),

For the normalizer \(N_G(H)\) where \(G\coloneqq\pi_1(X)\), \begin{align*} G(\tilde X) \coloneqq\mathop{\mathrm{Aut}}_{\mathrm{Cov}(X) }(\tilde X) \cong {N_G(H) \over H} .\end{align*}
In particular, \begin{align*} \tilde X \text{ normal} &\implies G(\tilde X) \cong \pi_1(X) / H \\ \widehat{X} \text{ universal} &\implies G(\widehat{X}) \cong \pi_1(X) .\end{align*}
There is a contravariant bijective correspondence \begin{align*} \left\{{\substack{ \text{Connected covering spaces} \\ p: \tilde X \xrightarrow{} X }}\right\}_{/\sim} &\rightleftharpoons \left\{{\substack{ \text{Conjugacy classes of subgroups} \\ \text{of } \pi_1(X) }}\right\} .\end{align*} If one fixes \(\tilde x_0\) as a basepoint for \(\pi_1(\tilde X)\), this yields \begin{align*} \left\{{\substack{ \text{Connected covering spaces} \\ p: \tilde X \xrightarrow{} X }}\right\}_{/\sim} &\rightleftharpoons \left\{{\substack{ \text{Subgroups of } \pi_1(X) }}\right\} .\end{align*}
For \(X, \tilde X\) both pathconnected, the number of sheets of a covering space is equal to the index \begin{align*} [p^*(\pi_1(\tilde X)): \pi_1(X)] .\end{align*}
Note that the number of sheets is always equal to the cardinality of \(p ^{1} (x_0)\).
Examples
Any subgroup \(H \leq \pi_1(S^1; 1) = {\mathbf{Z}}\) is of the form \(H = n{\mathbf{Z}}\), so intermediate covers are obtained from \(\widehat{S^1}/n{\mathbf{Z}}= {\mathbf{R}}/n{\mathbf{Z}}\cong S^1\) by pulling back the universal bundle:
given by the \(n{\hbox{}}\)valent Cayley graph covering a wedge of circles.
For n=2
 \(T^2 \xrightarrow{\times 2} {\mathbb{K}}\)
Identify \(S^1 \subset {\mathbf{C}}\), then every map \(p_n: S^1 \to S^1\) given by \(z\mapsto z^n\) a yields a covering space \(\tilde X_n\). The induced map can be described on generators as \begin{align*} p_n^*: \pi_1(S^1) &\to \pi_1(S^1) \\ [\omega_1] &\mapsto [\omega_n] = n[\omega_1] \end{align*} and so the image is isomorphic to \(n{\mathbf{Z}}\) and thus \begin{align*} p_n^*(\pi_1(S^1)) = \mathop{\mathrm{Aut}}_{\mathrm{Cov} }(\tilde X_n) = {\mathbf{Z}}/n{\mathbf{Z}} .\end{align*} where the deck transformations are rotations of the circle by \(2\pi/n\). The universal cover of \(S^1\) is \({\mathbf{R}}\); this is an infinitely sheeted cover, and the fiber above \(x_0\) has cardinality \({\left\lvert {{\mathbf{Z}}} \right\rvert}\).
The universal cover of \({\mathbf{RP}}^n\) is \(S^n\); this is a twosheeted cover. The fiber above \(x_0\) contains the two antipodal points.
The universal cover of \(T = S^1 \times S^1\) is \(\tilde X ={\mathbf{R}}\times{\mathbf{R}}\). The fiber above the base point contains every point on the integer lattice \({\mathbf{Z}}\times{\mathbf{Z}}= \pi_1(T) = \text{Aut}(\tilde X)\)
For a wedge product \(X = \bigvee_i^n \tilde X_i\), the covering space \(\tilde X\) is constructed as a infinite tree with \(n{\hbox{}}\)colored vertices:
 Each vertex corresponds to one of the universal covers \(\tilde X_i\),
 The color corresponds to which summand \(\tilde X_i\) appears,
 T The neighborhood of each colored vertex has edges corresponding (not bijectively) to generators of \(\pi_1(X_i)\).
The fundamental group of \(S^1 \vee S^1\) is \({\mathbf{Z}}\ast {\mathbf{Z}}\) by van Kampen, and the universal cover is the following 4valent Cayley graph:
The universal cover of \S^1 \vee S^1
See Hatcher p.58 for other covers.
Idea for a particular case: use the fact that \(\pi_1\qty{\bigvee^k S^1} = {\mathbf{Z}}^{\ast k}\), so if \(G \leq {\mathbf{Z}}^{\ast k}\) then there is a covering space \(X \twoheadrightarrow\bigvee^k S^1\) such that \(\pi_1(X) = G\). Since \(X\) can be explicitly constructed as a graph, i.e. a CW complex with only a 1skeleton, \(\pi_1(X)\) is free on the edges in the complement of a maximal tree.
The fundamental group of \({\mathbf{RP}}^2 \vee {\mathbf{RP}}^2\) is \({\mathbf{Z}}_2 \ast {\mathbf{Z}}_2\), corresponding to an infinite string of copies of 2valent \(S^2\)s:
Another universal cover.
The fundamental group of \({\mathbf{RP}}^2 \vee T^2\) is \({\mathbf{Z}}_2 \ast {\mathbf{Z}}\), and the universal cover is shown in the following image. Each red vertex corresponds to a copy of \(S^2\) covering \({\mathbf{RP}}^2\) (having exactly 2 neighbors each), and each blue vertex corresponds to \({\mathbf{R}}^2\) cover \({\mathbb{T}}^2\), with \({\left\lvert {{\mathbf{Z}}^2} \right\rvert}\) many vertices as neighbors.
Universal cover of {\mathbb{T}}^2 \vee {\mathbf{RP}}^2
Applications
If \(X\) is contractible, every map \(f: Y \to X\) is nullhomotopic.
If \(X\) is contractible, there is a homotopy \(H: X\times I \to X\) between \(\operatorname{id}_X\) and a constant map \(c: x \mapsto x_0\). So construct \begin{align*} H': Y\times I &\to X \\ H'(y, t) &\coloneqq \begin{cases} H(f(y), 0) = (\operatorname{id}_X \circ f)(y) = f(y) & t=0 \\ H(f(y), 1) = (c \circ f)(y) = c(y) = x_0 & t=1 \\ H(f(y), t) & \text{else}. \end{cases} \end{align*} Then \(H'\) is a homotopy between \(f\) and a constant map, and \(f\) is nullhomotopic.
Any map \(f:X\to Y\) that factors through a contractible space \(Z\) is nullhomotopic.
We have the following situation where \(f = p \circ \tilde f\):
Since every map into a contractible space is nullhomotopic, there is a homotopy \(\tilde H: Y\times I \to Z\) from \(\tilde f\) to a constant map \(c: Y\to Z\), say \(c(y) = z_0\) for all \(y\). But then \(p\circ \tilde H: X \times I \to Y\) is also a homotopy from \(f\) to the map \(p\circ c\), which satisfies \((p\circ c)(y) = p(z_0) = x_0\) for some \(x_0 \in X\), and is in particular a constant map.
There is no covering map \(p: {\mathbf{RP}}^2 \to {\mathbb{T}}^2\).
 Use the fact that \(\pi_1({\mathbb{T}}^2) \cong {\mathbf{Z}}^2\) and \(\pi_1({\mathbf{RP}}^2) = {\mathbf{Z}}/2{\mathbf{Z}}\) are known.
 The universal cover of \({\mathbb{T}}^2\) is \({\mathbf{R}}^2\), which is contractible.

Using the following two facts, \(p_*\) is the trivial map:
 By the previous results, \(p\) is thus nullhomotopic.
 Since \(p\) is a covering map, \(p_*: {\mathbf{Z}}/2{\mathbf{Z}}\hookrightarrow{\mathbf{Z}}^2\) is injective.
 Since \(p\) was supposed a cover, this can be used to imply that \(\operatorname{id}_{{\mathbb{T}}^2}\) is nullhomotopic.
 Covering maps induce injections on \(\pi_1\), and the only way the trivial map can be injective is if \(\pi_1(T^2) = 0\), a contradiction.
If \(G\curvearrowright X\) is a free and properly discontinuous action, then

The quotient map \(p:X \to X/G\) given by \(p(y) = Gy\) is a normal covering space,

If \(X\) is pathconnected, then \(G = \mathop{\mathrm{Aut}}_{\mathrm{Cov}} (X)\) is the group of deck transformations for the cover \(p\),

If \(X\) is pathconnected and locally pathconnected, then \(G\cong \pi_1(X/G) / p_*(\pi_1(X))\).
If \(f:X\to Y\) is a covering map of degree 1, then \(f\) is necessarily a homeomorphism.