欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Git Commit生成與合入Patch指南分享

 更新時(shí)間:2025年08月01日 10:56:27   作者:龍之葉  
文章介紹了生成和應(yīng)用補(bǔ)丁的兩種方法:diff命令對(duì)比目錄生成補(bǔ)?。ㄐ杪窂揭恢禄蚴褂密涙溄樱?及Git format-patch生成特定提交的補(bǔ)丁,同時(shí)說明了使用patch命令合入補(bǔ)丁的步驟,包括忽略目錄層級(jí)和撤銷操作

1. 生成 Patch 文件

1.1 使用 Diff 命令生成 Patch

通過 diff 命令,可以為兩個(gè)目錄生成差異補(bǔ)丁,這對(duì)于文件夾內(nèi)文件的修改非常有用,可以生成一個(gè)包含所有修改操作的補(bǔ)丁文件。

前提條件:

  • 需要對(duì)比的兩個(gè)目錄的頂層路徑深度需一致。若不一致,建議使用軟鏈接來滿足此要求。

示例:

假設(shè)有兩個(gè)目錄:

  • 目錄1:/media/data2/quectel/r12/cn_kj_r12a07/ql-ol-kernel/
  • 目錄2:/tmp/sdk/cn_kj_r12a07/ql-ol-kernel/

可以通過以下命令創(chuàng)建軟鏈接并生成補(bǔ)?。?/p>

mkdir patch
ln -s /media/data2/quectel/r12/cn_kj_r12a07/ql-ol-kernel/ patch/new 
ln -s /tmp/sdk/cn_kj_r12a07/ql-ol-kernel/ patch/old

若只修改了部分目錄(如 arch/arm/boot/dts/qcom,drivers,sound),則只需對(duì)比這些路徑:

cd patch 
diff -Naur old/arch/arm/boot/dts/qcom new/arch/arm/boot/dts/qcom > gpio-export.diff
diff -Naur old/drivers new/drivers >> gpio-export.diff
diff -Naur old/sound new/sound >> gpio-export.diff

參數(shù)說明:

  • -N: 將不存在的文件視為空文件。
  • -a: 將所有文件視為文本文件處理。
  • -u: 輸出差異時(shí)附帶差異前后三行的內(nèi)容。
  • -r: 遞歸比較所有子目錄。

注意:

  • 確保生成的補(bǔ)丁中,對(duì)比文件路徑的頂層路徑一致,以便合并時(shí)能正確找到對(duì)應(yīng)文件。

1.2 使用 Git Format-Patch 生成 Patch

在 Git 中,可以使用 git format-patch 命令生成特定 commit 的補(bǔ)丁文件。

步驟:

  1. 確保已提交想要生成補(bǔ)丁的 commit。
  2. 使用 git format-patch 命令生成補(bǔ)丁文件。

示例:

  • 生成最新提交的補(bǔ)?。?/li>
git format-patch -1 HEAD
  • 為特定 commit 生成補(bǔ)?。?/li>
git format-patch -1 <commit-hash>
  • 為一系列 commits 生成補(bǔ)?。?/li>
git format-patch <commit-hash1>..<commit-hash2>

常用命令:

$ git format-patch HEAD^ # 生成最近的1次commit的patch
$ git format-patch HEAD^^ # 生成最近的2次commit的patch
$ git format-patch HEAD^^^ # 生成最近的3次commit的patch
$ git format-patch <r1>..<r2> # 生成兩個(gè)commit間的修改的patch
$ git format-patch -1 <r1> # 生成單個(gè)commit的patch
$ git format-patch --root <r1> # 生成從根到r1提交的所有patch

2. 合入 Patch 文件

2.1 使用 Patch 命令合入

將生成的 .diff 或 .patch 文件復(fù)制到目標(biāo)目錄,然后使用 patch 命令合入。

示例:

cp gpio-export.diff /tmp/sdk/cn_kj_r12a07/ql-ol-kernel/
patch -p1 < gpio-export.diff

參數(shù)說明:

  • -p1: 合入時(shí)忽略第一層目錄。例如,.diff 文件中的 new/sound/soc/soc-jack.c 路徑,查找時(shí)會(huì)忽略 new/ 前綴。
  • -pn: 忽略 n 層目錄。

撤銷補(bǔ)丁:

patch -p1 -RE < /media/data2/quectel/r12/patch/gpio-export.diff

參數(shù)說明:

  • -R: 還原修改,即撤銷合入的補(bǔ)丁。
  • -E: 刪除合入補(bǔ)丁后的空文件。

通過以上步驟,您可以輕松地生成并合入 Git commit 的 patch 文件,從而方便地進(jìn)行代碼的審查和合并。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Git中查看文件的變更歷史的常用命令詳解

    Git中查看文件的變更歷史的常用命令詳解

    在 Git 中,查看文件的變更歷史是非常常見的操作,可以幫助你了解文件的修改記錄、誰在何時(shí)進(jìn)行了哪些修改,以下是一些常用的 Git 命令,可以幫助你查看文件的變更歷史,需要的朋友可以參考下
    2025-06-06
  • 程序員喜歡的5款最佳代碼比較工具

    程序員喜歡的5款最佳代碼比較工具

    這篇文章主要介紹了程序員喜歡的5款最佳代碼比較工具,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2020-06-06
  • json顯示日期帶T問題的解決方法

    json顯示日期帶T問題的解決方法

    使用json顯示日期時(shí),細(xì)心的朋友會(huì)發(fā)現(xiàn)帶T字母,就是天數(shù)跟小時(shí)數(shù)之間出現(xiàn)了一個(gè)T,下面為大家介紹下具體的解決方法
    2013-10-10
  • VSCode常用知識(shí)小結(jié)

    VSCode常用知識(shí)小結(jié)

    本文給大家匯總介紹了vscode的下載,安裝,常用插件以及常用的快捷鍵,非常的詳細(xì),希望對(duì)大家使用vscode能夠有所幫助
    2020-02-02
  • 解決vs?code通過remote-ssh遠(yuǎn)程到ubuntu頻繁掉線問題

    解決vs?code通過remote-ssh遠(yuǎn)程到ubuntu頻繁掉線問題

    這篇文章主要介紹了vs?code通過remote-ssh遠(yuǎn)程到ubuntu頻繁掉線問題解決方法,這個(gè)解決方案只要用自己安裝的Git替換掉windows本身的Git工具,需要的朋友可以參考下
    2022-09-09
  • 吐血推薦珍藏的Visual Studio Code插件(推薦)

    吐血推薦珍藏的Visual Studio Code插件(推薦)

    這篇文章主要介紹了吐血推薦珍藏的Visual Studio Code插件(推薦),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • 圖片的色彩空間問題

    圖片的色彩空間問題

    不知有多少朋友遇到此類問題:在PS里處理好的圖,發(fā)到論論壇上以后發(fā)現(xiàn)圖片顏色大變,變得灰蒙蒙,失去了層次,色彩生硬,還有點(diǎn)發(fā)青
    2014-05-05
  • 使用postman進(jìn)行接口自動(dòng)化測試

    使用postman進(jìn)行接口自動(dòng)化測試

    這篇文章介紹了使用postman進(jìn)行接口自動(dòng)化測試的方法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • Visual?Assist?X?番茄助手安裝教程與漢化技巧

    Visual?Assist?X?番茄助手安裝教程與漢化技巧

    Visual?Assist?X?是一款?Microsoft?Visual?Studio?擴(kuò)展工具,能夠幫助填補(bǔ)?Microsoft?Visual?Studio?在撰寫?C/C++?和?C#?程序之不足并提升其效率,本文給大家分享Visual?Assist?X?番茄助手安裝與漢化教程,感興趣的朋友一起看看吧
    2023-06-06
  • IDEA升級(jí)后Git拉取和推送的標(biāo)簽消失的解決方法

    IDEA升級(jí)后Git拉取和推送的標(biāo)簽消失的解決方法

    本文主要介紹了IDEA升級(jí)后Git拉取和推送的標(biāo)簽消失的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06

最新評(píng)論