Fix #465 out-of-memory due to git fetch prompt for cred

The fix is simply intercepting the git credential hook (http://git-scm.com/docs/gitcredentials.html).  Git will only call the hook when the credential is required (i.e. private repo) for http/https.

We will generate the hook script and configure it at git init time.   Once called, it will return invalid U/P forcing git to fail with Authentication Failure (no out-of-memory issue).

For sites that already on-going with existing git, will not benefit from this script and will still hit out-of-memory issue @davidebbo, thought?   The workaround is disconnect and reconnect git again - or manual /scm -X DELETE.

If we also need to support existing sites, we need to move the check and configure gesture to before fetch code path etc.