You can clone with
HTTPS or Subversion.
The issue here is that the packages.json contains a git repository:
This requires npm to run a "git clone" command, and for this to work, git needs to be in the PATH environment variable.
When a client is doing a "git push", it will be, 'CommandExecutor.ExecuteCommandAsync' is making sure of that, but any other way: GitHub fetch changes or even deploying an older version manually, will not go through that code and so will fail on file not found for git.exe.
Looking at the code again, 'CommandExecutor.ExecuteCommandAsync' is not the reason it works during push.
I think it's the fact that the deployment is initiated down the line after git.exe is executed (git.exe --> kudu.exe).
Thanks for opening this issue; I wasn't sure where it belonged.
As mentioned in that thread, using a tarball reference is a workaround that works in my case. But I hope for a fix for those who don't discover that workaround (or even realize what the issue is).
Curious to see the outcome.
@aejay - Does this issue continue?
I tried it and it seems to work fine now.
Please reactivate if this still reproduces.