2011-11-26 129 views
3

我剛剛學習如何使用git並希望遵循一個項目。所以我克隆了這個項目,並且我沒有最新的代碼。在git repo中維護我的補丁

如果我想添加一個補丁(或更多)的代碼,什麼是做到這一點(和運行makemake install),並仍然能夠git pull從主回購而不產生衝突的最佳方式?

我試過做一個分支,但我不確定這是否正確。

我希望能夠跟上主代碼中的新代碼,但能夠在推送新版本時應用自己的修補程序。

我想知道我在哪裏可以學習如何做到這一點,但我不知道該怎麼做谷歌。

+0

你的補丁是什麼意思?使用版本控制系統時,您不需要修補程序,因爲您的提交行爲就像這些修補程序 – Shahbaz

+0

[在第三方代碼上維護自定義修補程序]的可能重複(http://stackoverflow.com/questions/14397188/maintaining-custom -pat-on-third-party-code) – lesmana

回答

4

您可能正在尋找git rebase:創建一個從遠程追蹤分支一個本地分支和調用git config branch.mylocalbranch.rebase true(其中「mylocalbranch」是你的本地分支的名字)。現在你可以製作你的本地補丁並提交它們。每當您通過git pull獲取更新時,您的本地修改都是「重新分配的」(應用於您剛剛拖動的內容)。

注意不要將本地修改(例如本地分支的HEAD)推送到遠程,因爲這可能不是您想要的。進一步的細節見man git-rebase

+0

謝謝:這很有幫助。 – Edouard

0

從你所描述的,我猜分支確實是你想要的。你想在你自己的分支上,你可以推送到服務器,你可以合併與其他分支發生的任何事情

學習分支的最佳方法是嘗試幾次,在合併之後進行衝突並解決它們,會得到它的竅門。你可以開始here