2015-04-17 144 views
2

我公司使用atlassian存儲開發。所以,我們正常的開發過程是爲你正在做的任何事情創建一個遠程分支,將更改推送到分支,並執行pull請求。git本地補丁(或分支)管理

但是,很多時候我想浮動幾次更改。例如,當我正在處理特性X時,我在Y中公開了一個錯誤。我希望在我提交拉時保持變更集獨立。

我能想到的一對夫婦的蠻力方法:

  • 擁有多個本地回購每個修復,並同步推他們。
  • 創建大量遠程分支,並行推送。
  • 使用隱藏來保存我的補丁集,並同步推送。

但是,必須有一個更簡單的方法。我想我正在尋找某種被子,但沒有訂購。我想保留我的補丁集,直到準備好提交。

對此提出建議?

+1

許多* local *分支是否會爲您工作,並根據需要根據「主」分支進行重新分配?如果不是這樣,也許你可以解釋一下你會錯過這種方法,以便我們更好地理解你的情況。 –

+0

我認爲這種方法可行。但是,我對git分支很陌生,所以我需要更好地適應rebasing。 –

回答

1

我想你已經列出了一些很好的解決方案來解決你的問題。

有時當我不想引入更改時,我只是不會將這些文件添加到我的提交中 - 只需指定要添加的文件git add filename。如果我快速測試,我真的只做這個 - 我想這可能會很快變得凌亂。 當它再次拉動時,如果其他人觸摸了您正在處理的文件,您可能會遇到合併衝突..但重新引入您的代碼應該很容易。

您可以試試git stash - 這會將未完成的更改保存到堆棧。您可以隨時重新應用它們。另外,如果您正在研究長期增強或錯誤 - 我會創建另一個分支,如提到的克魯格。