Git
章節 ▾ 第二版

A3.8 附錄 C:Git 命令 - 修補

修補 (Patching)

Git 中的一些命令是以將提交視為引入變更的概念為中心,如同提交系列是一系列修補程式。這些命令可以幫助您以這種方式管理分支。

git cherry-pick

git cherry-pick 命令用於取得單個 Git 提交中引入的變更,並嘗試將其作為一個新的提交重新引入到您目前所在的分支上。這對於單獨從一個分支中提取一個或兩個提交,而不是合併分支(這樣會提取所有變更)非常有用。

「Cherry picking」(挑選提交)在變基和挑選提交工作流程中有描述和示範。

git rebase

git rebase 命令基本上是一個自動化的 cherry-pick。它確定一系列提交,然後按相同的順序將它們逐一「挑選」到其他地方。

變基中有詳細介紹變基,包括涵蓋已經公開的分支變基所涉及的協作問題。

我們在將歷史記錄拆分為兩個獨立儲存庫的範例中實際使用它,在取代中使用 --onto 標誌。

我們在Rerere 中介紹了在變基期間遇到合併衝突的情況。

我們也在變更多個提交訊息中,使用 -i 選項,以互動式腳本模式使用它。

git revert

git revert 命令本質上是一個反向的 git cherry-pick。它建立一個新的提交,該提交會應用您所針對的提交中所引入的變更的完全相反的變更,從本質上來說是撤消或還原它。

我們在反轉提交中使用它來還原合併提交。

scroll-to-top