linux git diff patch,拿到git patch要怎麼用一般patch指令merge?
如果你的codebase工作環(huán)境沒(méi)有使用git作管理, 你要怎麼做從git產(chǎn)生的patch呢?
首先要先知道diff 與 patch 的關(guān)係, 傳統(tǒng)的linux裡面, .patch檔案是透過(guò)diff產(chǎn)生的
Diff 和 Patch 的簡(jiǎn)易操作使用筆記
:
(參考: Tsung’s Blog)
diff -Naur file1 file2 > project.patch # Diff 產(chǎn)生 patch, 檔案, 資料夾都可以
# 或 diff -Naur dir1 dir2 > project.patch # Diff 產(chǎn)生 patch
patch -p0 < project.patch # 將 patch 寫(xiě)入
patch -p0 < project.patch # 再做一次會(huì)詢問(wèn)是否自動(dòng)加上 -R 來(lái)移除之前 patch 寫(xiě)入的(恢復(fù)回上一步的資料)
patch -R -p0 < project.patch # 移除回復(fù)修改 (同上一步驟, 此次就是確定要移除上次的 project.patch)
反正就是
造著傳統(tǒng)方式以 “patch -p0
然後會(huì)跳出 “File to patch:” 要求你輸入該檔的位置
你就複製貼上出現(xiàn)的檔案相對(duì)路徑與檔名, 直接輸入下去就好了
實(shí)際舉例如下 :
can’t find file to patch at input line 79
Perhaps you used the wrong -p or –strip option?
The text leading up to this was:
————————–
|diff –git a/user/hal/user/xxxxx.h b/user/hal/user/xxxxx.h
|index 0a3889f..9c92c36 100644
|— a/user/hal/user/xxxxx.h
|+++ b/user/hal/user/xxxxx.h
————————–
File to patch: user/hal/user/xxxxx.h <===複製上面貼到這裡
patching file user/hal/user/xxxxx.h
PS: 如果你有用git管理自己的codebase
總結(jié)
以上是生活随笔為你收集整理的linux git diff patch,拿到git patch要怎麼用一般patch指令merge?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: mysql可以存储标点么_MySQL查询
- 下一篇: linux查看cpu占用最多的进程,Li