Rails 在 windows 上开发 Guard/Livereload
Rails dev on windows with Guard/Livereload
我在 PC 上工作 Rails 开发,因为公司生活需要 Windows 和安全。
我当前的设置是 Ubuntu VM 上的 14.04 作为我的开发环境,我通过浏览器在 Windows 上进行测试。随着我的代码库的扩展和我的新手能力的提高,我正在更多地关注像 guard-livereload 这样的生产力助推器。除了这个设置非常慢之外,我想在花几个小时调试这个糟糕的安排之前先问问专家。
是否可以让 guard-livereload 和其他生产力增强器在 VM guest->windows 主机连接上工作?是否有 faster/more 可接受的方法来执行此操作?
我昨晚在我的个人 OSX 计算机上克隆了我的项目,并提醒我为什么要在 OSX 上进行个人开发——我正在寻找一些生产力提升剂来提高我自己的士气。
明确地说,我不是在问 "what's best"。我问 guard-livereload 和其他类似的辅助 gems 是否可以跨 VM 工作,并且是否有 更好的 windows 开发设置VM 来宾到 windows 7 主机。
这正是我的工作环境,没有理由不适用。
Guard/Livereload 在连接到 VM 的浏览器上工作正常,您只需确保广播以便您的 Windows machine 可以看到它。所以当 运行 普通旧 rails 服务器时,那将是:
rails s -b 0.0.0.0
如果没有 -b 0.0.0.0
,您的 windows machine 将无法连接。这是最近版本 rails(我认为是 4.2.0)的一项安全改进。同样,您可以将其放入 Guard 文件中。
guard 'rails', server: :thin, host: '0.0.0.0' do
watch('Gemfile.lock')
watch(%r{^(config|lib)/.*})
end
如果您在 VM 和服务器 运行 上使用编辑器,请确保您 运行 在非 samba 共享(Guard/watch 等不要很好地放在 windows 文件系统上)。
就 livereload 而言 - 我已经让它开箱即用,它使用 websockets 所以只要你没有网络限制,这应该没问题。
另一种方法是将 VM 用作纯开发箱并完全忽略 windows,只需使用 VM 中的浏览器进行测试,就像使用 mac 一样。
我在 PC 上工作 Rails 开发,因为公司生活需要 Windows 和安全。
我当前的设置是 Ubuntu VM 上的 14.04 作为我的开发环境,我通过浏览器在 Windows 上进行测试。随着我的代码库的扩展和我的新手能力的提高,我正在更多地关注像 guard-livereload 这样的生产力助推器。除了这个设置非常慢之外,我想在花几个小时调试这个糟糕的安排之前先问问专家。
是否可以让 guard-livereload 和其他生产力增强器在 VM guest->windows 主机连接上工作?是否有 faster/more 可接受的方法来执行此操作?
我昨晚在我的个人 OSX 计算机上克隆了我的项目,并提醒我为什么要在 OSX 上进行个人开发——我正在寻找一些生产力提升剂来提高我自己的士气。
明确地说,我不是在问 "what's best"。我问 guard-livereload 和其他类似的辅助 gems 是否可以跨 VM 工作,并且是否有 更好的 windows 开发设置VM 来宾到 windows 7 主机。
这正是我的工作环境,没有理由不适用。
Guard/Livereload 在连接到 VM 的浏览器上工作正常,您只需确保广播以便您的 Windows machine 可以看到它。所以当 运行 普通旧 rails 服务器时,那将是:
rails s -b 0.0.0.0
如果没有 -b 0.0.0.0
,您的 windows machine 将无法连接。这是最近版本 rails(我认为是 4.2.0)的一项安全改进。同样,您可以将其放入 Guard 文件中。
guard 'rails', server: :thin, host: '0.0.0.0' do
watch('Gemfile.lock')
watch(%r{^(config|lib)/.*})
end
如果您在 VM 和服务器 运行 上使用编辑器,请确保您 运行 在非 samba 共享(Guard/watch 等不要很好地放在 windows 文件系统上)。
就 livereload 而言 - 我已经让它开箱即用,它使用 websockets 所以只要你没有网络限制,这应该没问题。
另一种方法是将 VM 用作纯开发箱并完全忽略 windows,只需使用 VM 中的浏览器进行测试,就像使用 mac 一样。