2

我想在这里掌握一点想法。希望有人能帮助澄清最佳做法。用于版本控制的JS编译器/包管理器

团队或配对如何使用像grunt.js这样的JavaScript构建系统?

我真的想把我们的大型javascript文件分成小块,转换到AMD/Require目前不是一个选项。

看来最简单的方法是连接并缩小为主文件。我们正在使用版本控制(SVN)。

所以我想知道这里最好的做法是什么?

我们是否要求与生产文件不断冲突?其他团队如何处理这个问题?

希望我提出的问题足够清楚。

在此先感谢...

回答

4

我们最近在我的组织面临类似的困境。由于我们拥有大量的遗留JavaScript代码,因此使用AMD或RequireJS不是一种选择。我们ultimately went with grunt并提出了连接和缩小的“构建”任务。然后,有一个完全独立的“部署”任务,可将gzip的文件上传到Amazon S3。

我们不检查我们的连接/缩小代码来源控制。一般来说,为源代码分别创建和部署任务是一种很好的操作实践。对于较大的开发团队来说,部署/构建过程通常会在一个CI工具中完成,该工具在有人提交SVN/git时运行。

就你而言,如果你只是从你的开发机器手动部署代码,而不是从CI工具自动执行,那么更简单的安排就是如此。这种设置的问题是很容易与其他团队成员发生冲突。

也就是说,越来越多的开源(Jenkins)或云托管(CircleCI)工具可能值得您考虑。

+0

感谢smithclay的回应。我们遇到了类似的明显问题,并决定开始转换为异步加载程序。 – Adam

+0

我接受这个答案,因为它是一个有效的解决方案。然而,像smithclay提到的那样,它对我来说太容易陷入冲突。 – Adam

0

请勿提交输出。使用teamcity之类的ci工具来构建和部署。只将源文件提交给源代码管理。

+0

我忽略了编译的文件。但是Team City似乎对JavaScript的串联和压缩构建有点矫枉过正。这真的是球队如何做到的吗?再次感谢。 – Adam