小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

git打補(bǔ)丁的兩種方式及patch后面加的選型的含義

 風(fēng)雪夜歸人_95 2013-07-22

如果應(yīng)用了某一個(gè)補(bǔ)丁之后想恢復(fù)原來的文件,那么使用參數(shù) -R,例如:

1. 首先打了一個(gè)補(bǔ)丁

$ patch -p1 < my.patch

2 然后想恢復(fù)原來的文件,那么

$ patch -R -p1 < my.patch


如果要為多個(gè)文件制作補(bǔ)丁,那么可以使用 git 來快速生成,因?yàn)?git 是一個(gè)局部目錄的庫,所以不會(huì)有多余開銷。

1.創(chuàng)建 git

$ cd src

$ git init

2.添加需要制作補(bǔ)丁的文件,或者全部添加

$ git add *

或者

$ git add *.c

3. 提交原始文件

$ git commit -a -m'init'

4. 修改源文件

。。。

5. 創(chuàng)建補(bǔ)丁

$ git diff > my.patch


兩者配合時(shí)候可以合并、編輯以前的多個(gè)補(bǔ)丁文件,最后生成一個(gè)最新版本的補(bǔ)丁文件。

這樣創(chuàng)建的補(bǔ)丁文件目錄會(huì)自動(dòng)增加一個(gè)前綴 a/ b/,例如

diff --git a/Makefile.in b/Makefile.in
index e548e99..c019753 100644
--- a/Makefile.in
+++ b/Makefile.in

這時(shí)候應(yīng)用補(bǔ)丁的時(shí)候需要到包的根目錄,使用 -p1 選項(xiàng)

$ patch -p1 < my.patch

如果不想在文件名前面增加前綴,那么使用選項(xiàng) --no-prefix

$ git diff --no-prefix > my.patch

生成的補(bǔ)丁頭如下,沒有了文件目錄的前綴

diff --git Makefile.in Makefile.in
index e548e99..c019753 100644
--- Makefile.in
+++ Makefile.in

用這個(gè)打補(bǔ)丁的時(shí)候就需要使用 -p0 選項(xiàng)

$ patch -p0 < my.patch

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多