Let's consider the usual setup for time independent perturbation theory:
$$H=H_0+\varepsilon H'$$
and we can then set up the usual expansion:
$$(H_0+\varepsilon H')[|n_0\rangle+\varepsilon |n_1\rangle+\varepsilon ^2 |n_2\rangle+...]=(E_n^{(0)}+\varepsilon E_n^{(1)}+\varepsilon ^2 E_n^{(2)}+...)[n_0\rangle+\varepsilon |n_1\rangle+\varepsilon ^2 |n_2\rangle+...]$$
Long story short: when we have to solve a problem using perturbation theory the only thing we are interested about is how to calculate the corrections to the eigenstates and the eigenvalues.
If we are in the case of time independent non degenerate perturbation theory then this task is preatty straight forward once you know the formulas for the corrections:
$$E^{(k)}_n=\langle n_0|H'|n_{k-1}\rangle$$ $$|n_k\rangle=\frac{1}{H_0+E^{(0)}_n}|_{|n_0\rangle}[(E_n^{(1)}-H')|n_{k-1}\rangle+E_n^{(2)}|n_{k-2}\rangle+.....+E_n^{(k)}|n_0\rangle]$$
Done! Wonderful! But of course what if our Hamiltonian is degenerate? On textbooks I have found reasons why the old formulas do not work. I also understood that in some cases the perturbation cancels the degeneracy and in some other cases it doesn't. And there are also talks about the need to diagonalize the matrix in the degenerate space (this last point is not clear to me at the moment). Ok. But in practice: How can I set up and solve the perturbative expansion in the degenerate case? What are the formulas for the correction? (Knowing why the formulas work would also be nice but it is not the main point of this question)
Those are simple questions but I cannot seem to find any direct answer in my books or lecture notes. I would like a nice and concise answer. This topic seems really complicated to me as a beginner and I would like a summary of what is going on here. Especially from a practical point of view, on how can we solve exercises and expansions in the degenerate case.