所以我现在在家里与Perl玩了很多乐趣。
当你在团队中开发Perl模块(在我的情况下,它主要是催化剂)时,事情会变得多么困难?我们如何确保我们都拥有相同的开发环境(Perl / Module版本)?只需跟上CPAN的最新动态?有些团队设置了他们的“私人”CPAN吗?
答案 0 :(得分:6)
使用以下内容可以让您的生活更轻松。
检查local :: lib,然后您可以轻松创建一个服务器,每个成员也可以同步这些模块。
你可能真的不想镜像所有的cpan。只是最新的模块,这就是你使用minicpan的原因。
如果您在Task::Kensho中使用推荐的模块,那么使用最新版本不应该是一个问题,因为它们应该令人惊讶地更改您的API。基本上这样做可以确保你最终不会让你的团队重新发明轮子,或者希望使用3个不同的模块做同样的事情。
并且您希望确保您的团队使用良好的Perl编码实践而不是糟糕的编程实践。有很多不好的。阅读Perl Best Practices,请记住,这只是一个指南,你应该调整你的团队和你的风格。
答案 1 :(得分:4)
“在团队中”的含义并不完全清楚。
如果团队在某个公司,那么最好的解决方案当然是一个共享目录,其中只安装了您需要的CPAN模块。
如果团队是一群从家用电脑协同工作的人,那么有几种解决方案。
想到的一点如下:
将一个共享的“要安装的模块的最新版本”列表放在一个文件中,可以从网站上公开访问(在某人的主页上,您最喜欢的源代码控制系统,Google文档,等等)。
< / LI>编写一个Perl脚本,该脚本从Web检索该文件或将其从存储库中检出,循环遍历文件中列出的每个CPAN模块,并验证本地安装的版本是否正确。如果需要升级,have the script install update from CPAN。
将该脚本作为预定作业运行(在Unix上为cron
,在Windows上为at
/ scheduler
)作为admin / root帐户运行,或者至少为足够的烫发安装CPAN模块。
我不会提供脚本实现的细节,因为我甚至不知道这是用于Windows还是Unix,并且所有这些任务都是相当常规的Perl编码 - 如果你遇到困难,我们随时欢迎你提问跟进关于SO的问题! :)