2012-02-27 169 views
2

我爲最近一直在工作的網站創建了一個存儲庫。現在我要複製網站,因此我的想法是我將在Git中創建一個新的分支,這樣我可以分別處理對該工具的更改。但也要將重要的變化合並回主要分支。Git分支和合並

唯一讓我擔心的是,有50%的變化需要推回到核心,50%需要保留在這個分支上。

任何人都可以建議如何管理,因爲我不確定是否只能推回到二級分支的核心分支特定更改。

希望你跟着我在說什麼?

如果不是,請詢問清晰度。

+1

看起來你對同樣的代碼庫有兩個要求。對我來說,這聽起來有點類似於複製和粘貼代碼,但在這種情況下,巧妙地完成。我建議你看一下代碼,看看它是否可以重構,以便你有一個核心庫,然後由這兩個網站使用。我毫不懷疑會有一些代碼重複,但我認爲這比您在這裏建議的更容易管理。 – Zoidberg 2012-02-27 13:21:14

+1

也看看git cherry-pick,使用它,你可以選擇應該在第二個分支上應用哪些提交。 – ustun 2012-02-27 13:23:41

回答

1

這應該是沒有問題的。讓我們假設你有一個主分支(或者你想把它命名爲核心)的回購A(第一個回購)。讓我們假設A也是一個裸回購(所以你可以推動它的變化)。

只是一個克隆到一個新的回購B:

git clone A B 
cd B 
git checkout -b B-stuff 

添加的東西B-東西分支,你認爲合適。當你注意到你有一個核心變化時,只需查看主分支,在那裏提交併按下:

git checkout master 
.. changes 
git commit -am 'foo' 
git push origin master 
+0

爲此我要乾杯。 – David 2012-02-27 14:09:21

+0

原諒我,如果我錯了,但只是讓我跟着你,我已經克隆了原始的存儲庫克隆到msplugin ...然後我只是cd裏面,並運行git簽出-b B -stuff命令。你說它應該像切換回主服務器並提交更改一樣簡單,如果我想將更改推送到所謂的「核心」,那麼只需使用分支。 – David 2012-02-27 14:21:56

+0

是的,這就是我說的:) – ralphtheninja 2012-02-27 15:51:17