I'm not sure I understand #1. Git can still be used (and frequently is) as a centralized repo simply by using commit and push together as an atomic unit.
If you have a super important piece of code that you want to gate access to then you're going to deal with this roughly in the same way under both systems. Probably by breaking it into a separate repo and only granting access to specific people since even under SVN everyone gets a copy of the code on their local machine.