2012-11-07 86 views
4

我有點新的git,並決定我會跳進它,而不是給自己一個適當的教程。經過一個月的項目工作後,我陷入了一些麻煩。 我決定在某個時間點,我不喜歡某個特定的代碼是如何發出的,所以在那時B,我分支到E,刪除了違規的文件,並將它重新創建爲一個全新的文件。顯然,最好的辦法是將gm rm而不是僅僅刪除文件...我現在需要重新分配E來分支C,但不知道如何管理它,因爲與rebase有衝突,因爲該文件在兩個分支中都會改變。我的目標基本上是讓從E開始的分支繼續使用新文件,但將C的更改合併到新分支中。任何幫助搞清楚如何管理rebasing這一點,將不勝感激。Git:修復noobish的錯誤,以避免rebase地獄

A -> B -> C -> D 
    \ 
     E -> F -> G 

回答

2

你的總結髮言,告訴我,你正在尋找的是合併的具體文件在C或以相同的文件中G.這樣,您將有新的文件d甚至更好,因爲它已取得進展從E到G,包括您在C中所做的更改,我認爲這些更改也在D.

可以在分支之間合併特定文件。由於我不是很有經驗這樣做我會向您推薦幾個鏈接,介紹瞭如何做到這一點:

http://jasonrudolph.com/blog/2009/02/25/git-tip-how-to-merge-specific-files-from-another-branch/

How do I merge changes to a single file, rather than merging commits?

我希望這有助於。

+0

似乎只是結賬文件,但由於我不能提出一個更好的選擇,這就是我與(jasonrudolph鏈接)。感謝您的參考。 –