a branch cut
Some complex functions are multi-valued: the square root of a number, or its logarithm, has more than one legitimate answer, and if you walk in a full circle around a special point the value does not return to where it started. A branch cut is a curve you draw in the plane and forbid yourself to cross; it is the artificial fence that pins a multi-valued function down to one single-valued branch.
Consider f(z) = sqrt(z) or log(z). Writing z = r e^(i theta), the angle theta is only defined up to adding 2 pi, so sqrt(z) = sqrt(r) e^(i theta/2) flips sign after theta increases by 2 pi. The point z = 0 (and z = infinity), about which this happens, is a branch point. To make f single-valued you choose a branch cut -- commonly the negative or the positive real axis -- a curve joining branch points that the argument is not allowed to sweep across; on the plane minus the cut, one continuous branch (a choice of principal value) is well-defined and holomorphic.
Where you place the cut is a choice, but that a cut must exist is not. Across it the function jumps discontinuously -- and in physics that discontinuity is meaningful: the imaginary part of a Green's function or self-energy jumps across its branch cut, and that jump encodes the density of states, or the onset of a continuum of real, on-shell intermediate states (a decay channel opening). Poles are bound states; branch cuts are continua.
With the principal branch of log z cut along the negative real axis, log(-1 + i epsilon) approaches +i pi from above but log(-1 - i epsilon) approaches -i pi from below -- a jump of 2 pi i across the cut.
The value jumps by 2 pi i as you step across the logarithm's cut.
A branch point is not a pole and has no residue; a contour may not simply enclose it. Contours are instead routed to hug both sides of the cut, and the integral becomes the integral of the discontinuity across it.