使用 Grunt 将文件复制到项目外部的目录

Copy files to directory outside project with Grunt

我正在寻找一种更有效的方式来部署我的 WordPress 主题。现在我创建了主题,完成后我将内容复制到一个新文件夹中,没有我所有的节点、G运行t 和其他开发文件。我的 DesktopServer 上的开发环境 运行s,它有一个自动部署选项,但这也会复制不需要的开发文件。

我可以使用 G运行t 创建一个任务,在触发时将特定文件和文件夹从 /themes/dev-theme/ 复制到 /themes/production-ready-theme/ 吗?这样我就有了一个干净的主题,可以很容易地压缩或上传到生产服务器。

更新:我刚刚想到了从我的主题目录中 运行 g运行t-contrib-copy 的可能解决方案。这个 G运行t 模块可以让我控制要复制的文件。但也许有更干净或更有效的方法来完成这项任务。

通过使用 Grunt Shell 模块,您可以简单地将其添加到您的 grunt 文件中:

grunt.initConfig({
    shell: {
        moveTemlates: {
            command: 'mv /themes/dev-theme/* /themes/production-ready-theme/'
        }
    }
});

毕竟,grunt-contrib-copy 模块确实有可能将文件复制到目录树中。我刚刚在我的 grunt.js 文件中使用这些设置进行了尝试,它成功了。

Grunt Shell 完成工作。但是如果你已经在你的项目中安装了 grunt-contrib-copy,你可以直接使用它。

      copy: {
          main: {
                src: ['css/*', 'img/*', 'icons/*', 'js/*', 'lang/*', 'lib/*', '*.php', '*.css'],
          dest: '../production-theme/'
          }
      },