In the past, contractors would chisel out a crack into a larger "V" shape and fill it with hydraulic cement. Injection epoxy used to be the product of choice, but more recently, urethane is a common solution.