>我正在尝试为VSCode中的AEM项目设置开发环境。 我想创建各种任务来自动化同步,因为我需要使用 repo,它仅适用于 cygwin shell。
任务定义的存储库文档中的示例如下,但它被认为是针对 mac 的。
{
"label": "put file",
"type": "shell",
"command": "repo put -f ${file}",
"problemMatcher": []
}
这就是我一直在尝试的,它初始化了 cygwin shell,但似乎没有执行命令,也没有完成任务。
{
"label": "put file",
"type": "shell",
"command": "repo put -f ${file}",
"options": {
"shell": {
"executable": "C:\cygwin64\bin\bash.exe",
"args": ["/bin/xhere", "/bin/bash"]
}
},
"problemMatcher": []
}
控制台的输出
有人可以帮助我吗?谢谢!
我看到您正在将AEM文件推送到远程存储库,反之亦然。
为此,您也可以使用其他插件。正如Sharath的上述回答,有很多选择。
一个是"aemsync"。在您的机器上安装它后,您只需根据您的要求运行命令">aemsync",带或不带参数。
您可以使用 nodejs 安装 aemsync,如下所示:
npm install aemsync -g
您可以访问此处获取详细文档。 https://www.npmjs.com/package/aemsync
还有多种其他方法可以推送代码,但这是一种简单的方法。也可以使用大口俚语。
如果您想参考更简化的方法来同步 aem,您可以参考这个。
https://hashouttech.com/simplify-your-aem-coding-with-vault-syncing-between-disk-and-server/
如果您希望将前端文件同步到AEM实例,节点生态系统中还有其他替代方法可以实现此目的。
您可以尝试gulp-slang,这是一个gulp监视任务,可在文件更改时将更改推送到AEM。
和AEM打包器来打包内容
我刚刚遇到这个问题,我试图运行type: typescript
的任务,但我注意到Cygwin shellbash
无法处理Windows路径,从而导致command not found
错误。
我的解决方案是使用 PowerShell 来运行任务,这仍然给出了预期的结果!
{
"type": "typescript",
"options": {
"shell": {
"executable": "powershell.exe"
}
}
}