Not git, Perforce, but I used to have a guy on my team that would do weeks of work without checking in. 1000s of lines in 10s of files.
I gave him shit for every code review, every time we had 1-on-1s, and while he was doing his tasks. Nothing got through to him.
So I just kept dragging him back on check-ins. I'd nitpick the shit out of every line (and normally I hated that.) His stuff would inevitably break the build or be full of bugs anyway (duh) so I never felt bad that I was holding back his career since he was never getting things done "on time."
If you can't/won't break your work down into smaller chunks you aren't a skilled programmer and/or don't have respect for the people you work with who have to review your shit.
No it is not. It depends on the codebase - if it is something relatively new, a proof of concept or something that is bound to change soon, there is no point in slowing the development down just because it is "too large to digest".
If you're just rubber-stamping in code reviews, why even have them in the first place in that case? They aren't exactly providing you with any mileage at that point.
Sure but who's got time for all that aggravation? Especially if it's not part of the codebase I have to work with personally. LGTM and let it be someone else's problem.