If your goal is to manage permissions on the remote server by using a local machine, then the answers by mockinterface and patthoyts are both valid.
It is important to point out that a post-receive
hook is written in advance and contemplates certain expected conditions. There will undoubtedly be unique situations that arise that are not contemplated by the existing post-receive
hook, and another method would need to be used.
To the extent that you desire 755 permissions in both locations (i.e., remotely and locally), then setting the permissions locally prior to pushing is sufficient.
To the extent that you desire different permissions in both locations (i.e, remotely and locally), then you will need to use one of the methods suggested by the others in this thread.