Having a 'prepare' script causes trouble
If the package.json file defines a prepare script (e.g. to transpile source code), this will be correctly executed while packing and publishing. However, it will again be executed by the consumer that tries to install the package, which then most likely fails. In the npm docs:
prepare: Run both BEFORE the package is packed and published, on local npm install without any arguments, and when installing git dependencies
As a simple workaround, a publish-to-git user could use prepublish instead of prepare, which is almost the same except it is not executed when installing from a git dependency.
Perhaps publish-to-git could automatically remove the prepare script from package.json, or rename it to prepublish, or simply throw a warning when it is present.
publish-to-git is not by itself using any prepublish and/or prepare. It's using npm pack
see here https://github.com/Rush/publish-to-git/blob/master/index.js#L45
I don't feel npm publish should mess up with somebody's package json ... the design of this package is to be as least invasive as possible.