If the whole thing is really all or nothing (very rare), at least break it up into sensible commits that can be reviewed individually.
If it can be broken into commits it's not all or nothing is it :)
If it can be broken into commits it's not all or nothing is it :)