ruby-on-rails – Git / Rails /共享主机(Dreamhost)工作流程
这主要是关于有效
Git使用的问题.我应该首先说我不是Rails的专家(至少在生产意义上)并且绝对是Git新手,但是,我有一些使用SVN的经验.
我的问题是我正在尝试创建一个rails应用程序,但不知道在我的计算机上保持开发本地但是能够部署到Dreamhost上的共享主机帐户的最佳方法. 我认为Git会允许我这样做,但我不完全确定如何.我想在服务器上创建一个Git repo,并在每次提交后将我的本地内容推送到它上面.我已经阅读了一些关于Git的教程,但我仍然对于该怎么做感到困惑.替代方法是只使用FTP并复制文件,但这似乎不对. 有没有人有一些我可以使用的第一步和/或命令?这种部署方法是否可疑还是有更好的方法吗? 解决方法
我在一个与你所描述的非常相似的设置中运行一个
a brass band in Wisconsin的Rails网站,尽管它目前在hostingrails.com之外运行.我托管我的代码
on github,但没有理由你不能私下托管它.我的流量在过去的一年半中发生了变化,因此从短期来看,只需要你所需要的东西.
在我的流程的中心,我已经设置了a semi-elaborate Capistrano script来处理部署,包括生成生产数据库的整个副本以供测试的a separate staging environment.这需要一段时间(几小时,而不是几天)来构建,但它是如此值得. 我的工作流程保持at least 2 branches: > current_release:实时生产代码.紧急错误修正在这里. 有了这个设置,我可以同时处理好几件事.每周一周(因为这远不是全职职业),我做了以下几点: >我在功能分支中编辑.我来回切换,感到无聊,兴奋,无论如何.有时我会合并两个共同成长的功能. [编辑] >为即将部署的已完成功能将一次一个地合并到主分支. $git checkout master >我将网站上传到私人网址(恰好是stage.madisonbrass.com).登台环境始终从主分支中提取. $cap staging deploy #master现在正在stage.madisonbrass.com上 > Bam,在我测试的时候,我在公共网站上发现了一个紧急错误.幸运的是,我有current_release单独工作,因此可以单独修复和部署它. $git checkout current_release >我回到主分支,并从合并紧急修复开始. $git checkout master >我继续测试大师.希望没有新问题出现,但如果他们这样做我将它们修复为master,我将这些更改合并到current_release中并进行另一个生产部署. $git checkout current_release >我拆除了我的暂存环境,以免以某种方式被搜索引擎索引. $git staging teardown (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |