2017-04-22 83 views
1

origin以來的提交沒有被推送。如何將這些提交從我的主分支中提取出來並放入他們自己的分支中,以便以後可以合併它們?

enter image description here

我沒有計劃非常好,並且意識到Targeted InterestsAppodeal是觸及了大量的代碼,並可能打破東西大提交,所以我想移動這些提交了我的主分支,進入他們自己的分支,計劃在晚些時候合併他們。

我該怎麼做?

+1

我沒有寫一個完整的答案的時候,但這裏是一個概述:創建在'產地/ master'的一個新的分支,櫻桃挑問題提交到那裏,然後用交互模式下的'git rebase'去除'master'分支的提交。你*也可以通過創建一個臨時分支並選擇所有*,但是*這兩個提交到那裏來完成後者,然後用該臨時分支替換'master'。 – Dolda2000

+0

@ Dolda2000謝謝!我今天學會了'git rebase -i'!如此強大。 – kayla

回答

1

以下是您需要遵循的步驟。

  1. 創建一個新分支feature_branchorigin/master並檢查出來。
  2. Cherry pick Appodeal and Targeted interests into feature_branch
  3. 創建一個新分支tempFix Android linking並檢查出來。
  4. 櫻桃挑選分支以上的所有提交temp分支除了您需要放在一邊的提交,temp分支。
  5. 硬復位master分支到相同的提交temp指向。
  6. 刪除temp分支。

在開始之前,最好在提交時指定master分支處創建一個新分支,因此如果您做錯了事情,它將更容易恢復。另外,在做任何事之前備份存儲庫也是一個好主意。

0
  1. master,git branch backup-appodeal萬一我擰了。
  2. At origin/mastergit checkout -b appodeal
  3. appodeal,git cherry-pick提交我想從master移動。
  4. mastergit rebase -idrop剛挑選的櫻桃提交,它被轉移到appodeal

enter image description here

瞧!

enter image description here

相關問題