ruby-on-rails - 如何使用来自 git hook post-receive 的特定 rvm gemset 进行 bundle 安装?

标签 ruby-on-rails ruby git rvm bundler

因此,我正在尝试在不使用 capistrano 的情况下实现类似 heroku 的部署。 为了检查和安装 gems,我尝试使用 git hook 并将以下命令放入/hooks/post-receive:

bundle check || bundle install

但是当我运行 git push 时,我得到:

remote: hooks/post-receive: line 20: bundle: command not found. 

我知道 hook 可能会从错误的环境中启动命令,并且我必须以某种方式从 hook 切换 rvm 环境。我尝试在接收后使用 rvm use 1.8.7@rails3 但它没有帮助。有什么想法吗?

最佳答案

您可能只需要确保在 Hook 顶部获取用户环境,例如:

$ source $HOME/.bash_profile # single user RVM setup
$ source /etc/profile        # multi user RVM setup

关于ruby-on-rails - 如何使用来自 git hook post-receive 的特定 rvm gemset 进行 bundle 安装?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6165960/

相关文章:

ruby-on-rails - 如何处理 protect_from_forgery 以使 Rails 应用程序进行通信?

ruby-on-rails - Rails3 中的 Paypal Express Checkout

ruby-on-rails - 如何检查参数是模型的实例还是 Rails 中的类?

ruby-on-rails - 服务器启动时如何修复 "Your Ruby version is 2.3.0, but your Gemfile specified 2.2.5"

c++ - 始终使用 Visual Studio 中可用的最新工具集

git - 如何推送到容器上的 git 服务器?

ruby-on-rails - 在 Rails 中的 send_file 之后删除文件夹

javascript - 如何在 Rails 中使用 Jquery 和 Coffeescript 隐藏元素?

javascript - 用 flash[ :notice] using right. js 的内容刷新一个 div?

Gitblit:导航到二级文件夹时的错误请求