2013-04-01 86 views
0

所以我正在開發一個RoR項目。 我需要fork repo,並且正在解決我自己的fork問題,併爲非重要的更改發出pull請求。主要的回購所有者請求創建問題修復分支。正確處理rvm,bundle,git和分支的方式

什麼是與RVM處理這個正確的方式,捆綁和git分支?

我的問題可能在沒有完全理解回報率/ RVM,寶石相關和捆綁。我需要爲我創建的每個新分支運行bundle install嗎?我在bundle install之後遇到了一些問題,主分支中的Gemfile出現了一些問題(在這裏所有者的主回購中出現了錯誤),但之後又在新的分支中失敗了。

+0

我知道這個問題有點老了。但是我終於開始記下我使用的步驟,爲Git分支處理不同的RVM gemsets。也許它可以幫助那些絆倒在這。 http://is.gd/pao3ZZ –

回答

1

從理論上講,你應該只需要運行bundle install當你添加新的寶石到Gemfile中。

RVM不應該來到這個可言,除非你在Ruby多個版本同時測試。

至於分支機構,我通常做的是,已經分叉庫,創建了大的特點分支機構。完成後,我會爲該分支發出拉取請求,一旦被接受,我將它合併到我的本地分叉中,然後沖洗並重復。

1

RVM - Ruby版本管理器。這不應該真正起作用,您可能需要更改ONCE或TWICE版本來解決問題,但您幾乎總是使用最新的ruby版本。

束 - 使用捆綁的更新寶石+依賴的工具。專業提示 - 您可以運行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"

,然後當你做,你可以合併的新的分支到master分支

git checkout master git merge mybranch

PRO提示:在你離開之前工作的星期五,在出門前進行修改。如果你嘗試和解決這個問題,你很可能會造成更多的傷害,而你會想重置。

git reset --hard

祝你好運!

快樂編碼!

-Brian