我目前正在开发一个Rails项目在我的电脑中。 我想给我的朋友提供一份项目副本,以便他可以在同一个项目上并行工作。Rails项目是否可以跨各种计算机使用?
是否将项目目录复制到其他系统,有帮助吗?或者我应该多做些什么来把这个项目带到不同的系统。
我目前正在开发一个Rails项目在我的电脑中。 我想给我的朋友提供一份项目副本,以便他可以在同一个项目上并行工作。Rails项目是否可以跨各种计算机使用?
是否将项目目录复制到其他系统,有帮助吗?或者我应该多做些什么来把这个项目带到不同的系统。
假设他们安装了服务器组件(以便他们可以测试它),那么您所需要做的就是提供项目目录。
你也可以做
rake rails:freeze:gems rake gems:unpack
这将复制的environment.rb到供应商指定的文件夹中轨和宝石,让你的朋友就不必安装它们。
Rails使用Bundler依赖关系管理器。 Rails 3需要它,您也可以选择将其用于Rails 2和其他Ruby项目。即使您仍在使用Rails 2,您也应该使用它来指定项目所依赖的宝石,以便它们可以安装在需要运行项目的任何环境中。安装捆绑器后,您的合作伙伴需要执行的操作如下:
bundle install
您还将依赖于数据库。对于开发,经常sqlite是足够和理想的,因为它只是使用一个易于传输的文件,而不必创建/转储/加载和管理用户访问像MySQL或Postgres的东西。您需要确保您正在使用的数据库已安装。然后,运行:
rake db:create
rake db:migrate
而不是仅仅复制项目目录,这是必要的,你使用版本控制系统如Git这样你就可以协调二者的更改。这是跟踪谁改变了什么而不覆盖你的合作伙伴工作的唯一合理方式。另外,如果您有更复杂的需求来为开发应用程序服务器设置特定的环境,请参阅Vagrant:它可以帮助您设置用于构建应用程序运行的虚拟机的配方,完成与安装的数据库,红宝石,宝石,Web服务器和其他可能需要的工具版本。
这除了尼基塔Rybak的答案。 – Laz 2010-10-17 13:38:03
Heroku云服务将为您提供一个免费的开发账户。 Git和部署命令是一个美好的工作,并将使学习版本控制thouroghly愉快。
@Saran不要忽略第2步在这里。使用源代码管理! – jdl 2010-10-15 20:53:39
Upvote帮助强调VCS的重要性。 :) – Robbie 2010-10-16 00:35:39