如何使用VSCode在Cygwin shell中运行自定义任务?



>我正在尝试为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"
}
}
}

相关内容

  • 没有找到相关文章

最新更新