处理rvm,bundle,git和branches的正确方法

时间:2013-04-01 21:18:13

标签: ruby-on-rails git rvm bundle

所以我正在研究一个RoR项目。 我需要分配repo并正在修复我自己的fork上的问题,发出拉动请求以进行非平凡的更改。主要的repo所有者请求为问题修复创建分支。

使用rvm,bundle和git branches处理这个问题的正确方法是什么?

我的问题可能与不完全理解RoR / rvm,gems和bundle有关。我是否需要为我创建的每个新分支运行bundle install?我遇到了问题bundle install在主分支中摆弄Gemfile后出现问题(所有者的主仓库中有一个错误),但在新分支中再次失败。

2 个答案:

答案 0 :(得分:1)

理论上,只需在向Gemfile添加新宝石时运行bundle install

除非你同时在多个版本的Ruby上进行测试,否则RVM根本就不应该参与其中。

关于分支,我通常做的是,分叉存储库,为大型功能创建分支。完成后,我发出该分支的拉取请求,一旦被接受,我将其合并到我的本地分支中,冲洗并重复。

答案 1 :(得分:1)

RVM - Ruby版本管理器。这不应该真正发挥作用,您可能需要更改版本ONCE或TWICE来解决问题,但您几乎总是会使用最新的ruby版本。

bundle - 使用bundle作为工具来更新gems +依赖项。专业提示 - 您只需运行bundle而不是bundle install。您还应该阅读不同的分组,例如

group :assets do
 gem 'sass' # or whatever
end

然后你有:development组(你只在开发中使用的宝石)。和:production(与发展相反)。

GIT - 这是您项目的核心和灵魂。流行的工作流程是分支

git checkout -b mybranch

然后你就是一个“安全区”,你可以随意玩耍。您进行了一些重要更改,提交并添加了必要时添加的文件。

git add -A

git commit -am "commit message"

然后在完成后,您可以将新分支合并回主分支

git checkout master git merge mybranch

专业提示:在星期五离开工作岗位之前,请在出门前提交更改。如果你试着和你一起工作很有可能你会造成更多的伤害而不是好的,你会想要重置。

git reset --hard

祝你好运!

快乐的编码!

-Brian