什麼patch?要怎麼用?
今天收到一個*.patch的檔案, 因為之前廠商有一個範例程式有些問題。
他們做了一些修正。
我本以為他們會把整包改好的程式丟過來, 沒想到是用patch!
如果是Linux/Unix的環境, 本來就是常用patch來做程式的異動,
但他們的環境一直都是在Windows上面的。
這下子真不知如何做了, 找了一下, 發現:
https://stackoverflow.com/questions/517257/how-do-i-apply-a-diff-patch-on-windows
有人介紹在Windows可以用Python工具來做:
先把*.patch檔copy到原先的程式, projects目錄的上一層.
因為我在.patch檔看到如下的內容:
diff --git a/projects/target_apps/ble_examples/ble_app_barebone/src/user_barebone.c
想來是用相對目錄, 就如此做了, 也不知有沒有必要如此?
然後下如下指令:
G:\DA14585_SDK\6.0.4.326>python -m patch 20171120_0_ancs.patch
沒有出現任何成功或失敗的訊息!
用人工去檢查, 結果是成功的做好了!
他們做了一些修正。
我本以為他們會把整包改好的程式丟過來, 沒想到是用patch!
如果是Linux/Unix的環境, 本來就是常用patch來做程式的異動,
但他們的環境一直都是在Windows上面的。
這下子真不知如何做了, 找了一下, 發現:
https://stackoverflow.com/questions/517257/how-do-i-apply-a-diff-patch-on-windows
有人介紹在Windows可以用Python工具來做:
於是照做:pip install patch python -m patch
先把*.patch檔copy到原先的程式, projects目錄的上一層.
因為我在.patch檔看到如下的內容:
diff --git a/projects/target_apps/ble_examples/ble_app_barebone/src/user_barebone.c
想來是用相對目錄, 就如此做了, 也不知有沒有必要如此?
然後下如下指令:
G:\DA14585_SDK\6.0.4.326>python -m patch 20171120_0_ancs.patch
沒有出現任何成功或失敗的訊息!
用人工去檢查, 結果是成功的做好了!
留言