Issue title: [BUG] only certain whitelisted hosted gits support shadow cloning
 Issue body: https://github.com/npm/cli/blob/dc001afb71336968ef865fd37bd61cc8dca335ba/node_modules/pacote/lib/fetchers/git.js#L169-L178

I know this may be on purpose, but why we need to limit shallow clone for those hosts? It makes `npm install` very slow when we have large self-hosted git dependencies.




 Comments: 
 Comment 0: Yeah, we went with safety over power here.  The `@npmcli/git` module has a way to override it with the `gitShallow` option, but we aren't exposing that in the npm config object, and it's mostly just there for testing purposes.

I don't want to change the default, but I would like to give you a way to specify that a host supports shallow cloning.  Maybe we could add a `--git-shallow-host=git.internal.mycompany.com --git-shallow-host=otherhost.com ...` type of option, where you can specify a list of hosts supporting it?  A more convenient (but slightly dangerous) way to do it would be just a top-level `--git-shallow=[always, true, false]` option kind of like we do for `--color`, where `always` means "always do it no matter what", `false` means "never do it, even for known hosts", and `true` means "use the default".

Could even do both things, I guess?  `--git-shallow-host=<hostname>` to add a host to the list, and `--git-shallow=always/true/false` to even bother with it.

What do you think?
 Comment 1: Looks good. I think `--git-shallow-host` is enough as it is good to know what is allowed for security's consideration.
{'source': 'GithubIssues', 'repo_name_with_owner': 'npm/cli', 'issue_id': 680355947, 'repo_stars': 6905.0}