2012-06-25 23 views
1

以下是我正在做的事情。我的主分支有一個bug,我已經使用git bisect確定了一箇舊提交,這是最新的提交,它沒有顯示錯誤。如何在我已經做出更改的舊提交中創建分支?

我已經檢查了這個提交併做了一些修復以消除編譯器警告,所以我希望這些更改(與原始錯誤無關)最終包含在內。

我現在想要做的是在這裏創建一個新的分支,它將這個舊的提交(最後一個非錯誤提交)作爲父對象。

我懷疑答案是在這裏,使用-b branchname承諾。那是對的嗎?

回答

3

沒有commit -b。你應該像往常一樣git checkout -b branchname,然後git commit。這將爲您提供一個新的分支,其中包含一個新的提交,並將您之前簽出的提交作爲其父項。

+0

好的。看起來像檢查分支並不意味着它會嘗試覆蓋我所做的更改。好。 –

+2

除非你給它指定覆蓋的路徑名,否則'git checkout'永遠不會覆蓋修改過的文件,而是無害地中止。 'git checkout -b'根本不會觸及工作樹,因爲它正在使用* same * tip commit創建一個新分支。 –

+0

如果我想將當前更改與特定提交合並,該怎麼辦?那是什麼命令? –

相關問題