2015-06-12 44 views
0

我經歷了幾個相關的問題,提出了我自己不太好的解決方案,我認爲有更好的方法來解決我的問題,需要建議。Git:在不同的分支有不同的文件集(工作流程建議)

這是情況。

我有兩個分支,mastergh-pages

master擁有一個單獨的文件(這是一個JavaScript插件),而沒有任何目錄在github回購。

gh-pages包含我演示插件的示例站點的所有代碼。它保存圖像,CSS,HTML,依賴庫和插件文件本身。

現在,在我的本地存儲庫中修改插件文件時,我在gh-pages分支上,因爲我必須測試它是否正常工作。一旦我完成修改,添加或修復插件中的內容,我將它提交給gh-pages分支。要將更新後的插件引入主分支,我執行以下操作。

git checkout master git checkout gh-pages js/lib/Plugin.js

這帶來的插件文件整個目錄(js/lib/Plugin.js)我master分支。然後,我必須手動將上一個插件文件替換爲上述命令引入的插件文件,然後將其提交給主分支。

這個解決方案對我來說似乎非常單調乏味。有沒有更好的方法來實現結果?

回答

0

你需要的是rebasing或合併。當你使用類似git的東西時,你不需要手動進行任何操作。如果你這樣做,這意味着你的工作流程/過程出了問題。

正如我所瞭解你在這裏嘗試的是,你有一個功能分支叫gh-pagesmaster分支。你想要做的是,把你的改變帶入你的主分支,對吧?

,所以你有兩個選擇:要麼Rebasing or Merging

我將解釋如何與基礎重建做到這一點。記住這是幾種方法之一。如果你按照上面的教程,你可以拿出流走你的gh-pages分支的變化master

git checkout gh-pages 
--commit everything you have done to your gh-pages branch-- 
git rebase origin/master //rebase your branch with master 
git push origin gh-pages //push your local changes to the gh-pages remote repo 
git checkout master 
git merge gh-pages --no-ff //merge your local changes with master 
git push origin master // push all the changes to master ! 
0

當地MACCHINE你做的更改,然後

 git add -u 

這將更新資源庫

相關問題