Git Post-推送挂钩替换构建文件夹

Git Post-Push hook replacing build folder

我正在使用一个 AngularJS 应用程序作为 Web 应用程序托管在 Azure 上。

我的存储库在 Bitbucket, connected as a deployment slot. I use TortoiseGit as a Windows shell for commit/pull/push. Grunt 是我的任务运行器。


问题:推送完成后,我无法替换 build 文件夹。这是在 Azure 上公开的内容(见图):


我试过的


目前我的解决方案是,在推送后我使用 grunt build 构建并通过 FTP 与 FileZilla 连接并手动替换 build 文件夹。

如何实现自动化?

提前致谢。

我通过重构调用的初始批处理脚本解决了这个问题:

npm install 
bower install 
grunt clean 
grunt build
winscp.com /script=azureBuildScript.txt

和我的 azureBuildScript.txt:

option batch abort
option confirm off
open ftps://xxx\xxx:xxx@waws-prod-db3-023.ftp.azurewebsites.windows.net/
cd site/wwwroot
rmdir %existingFolder%
put %myFolder%
exit

这正在被触发Post-在 TortoiseGit 中作为 Hook 作业推送。

事实证明 ftp.exe 在被动模式方面受到限制,无法解释会话,而 WinSCP 可以轻松做到这一点。