我的目标是设置我的环境,使其能够在本地计算机上运行$git-push-myapp-master,并在Bluehost的VPS上自动部署/更新我的RoR应用程序。
在我的电脑(Linux Ubuntu)上,RoR应用程序位于:/var/www/myapp
我遵循了这个伟大的解释教程,我在~/git/repository/myapp的VPS服务器上安装了一个功能强大的git
理想情况下,我部署的RoR应用程序将位于Bluehost上~/rails_apps/myapp
Bluehost自动使用Pushion Passenger,~/public_html/myapp文件夹和RoR应用程序的公共端之间有一个符号链接,位于~+/rails_apps/myapp/public。
我被后接收git挂钩卡住了,我没有使用Capistrano(我应该吗?)
我读过很多有类似目标的文件,比如这本,或者这本,我甚至发现了这颗宝石。
实现同一目标有不同的方法,我仍然很困惑,因为我还没有找到一个适合我需求的后接收挂钩示例(也没有掌握逻辑)。
我曾在git指南的特定挂钩部分,它告诉你可以做什么,但不告诉你如何做,这对每个人都很好,但新手除外。
对场景和目标有帮助吗?如果我使用Capistrano和/或gitrails-gem会更容易吗?其他建议?
谢谢。
添加:
嗨,我现在用的是伊斯坦布尔,但还没有进球。
我在linux本地机器上有我的应用程序/var/www/my_app。
git存储库remote--bare and--share位于user@myserver:/server/user/git/repository/my_app。
我想部署到/server/user/rails_apps/my_app。
在deploy.rb我有
set:应用程序,"my_app"。
set:repository,"user@myserver:/server/git/repository/my_app。
set:user,"my_user_name"。
设置:域,"mysite.com".
设置:scm,:git。
set_scm_command,"/server/user/bin/git"。
设置:scm_passphrase,"my_phrase"。
设置:deploy_to,"/server/user/rails_apps/my_app"。
设置:deploy_via,:remote_cache。
设置:tmp_dir,"/server/user/tmp"。
当我运行它时,会告诉我:致命:没有远程配置来列出引用。你能给我一些指导吗?谢谢
是的,标准方式是Capistrano或Mina,并在托管目录中提供rails环境。如果你一心想用heroku的方式来做这件事,你可以使用Vagrant在这里提供你自己的heroku环境:https://github.com/openruko/vagrant-openruko