Another possible cause of the "Git fetch failed with exit code: 128" error message - it happened to us for pull requests builds when a developer clicked merge right after a pull request was created and the build, of course, hasn't finished yet.
So it was the "follow the process" solution for us. It could be enforced also.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…