[英]How to apply a .diff file
我有一個.diff類型的文件,好像吹了:
diff --git a/res/User.lua b/res/User.lua
index db8c2cc..4d2af0f 100644
--- a/res/User.lua
+++ b/res/User.lua
@@ -5,6 +5,7 @@ resetPassword = {}
+UserInfo = {}
我應該手動修改我的本地User.lua,還是可以像應用補丁文件一樣應用diff文件? (或者應該將.diff文件轉換為.patch文件,如何?)
會感激任何幫助。
應該將
.diff
文件轉換為.patch
文件,如何?
不,擴展並不重要。 內容是。
你可以試試,如果不能正常工作,后備對此有何評論由ЕвгенийЧорба(葉夫根尼·索利斯) :
對於沒有補丁命令的人,
git apply
什么都不做。 解決方案是:
讓我們修改補丁文件!從
diff --git a/uc_attribute/uc_attribute.admin.inc b/uc_attribute/uc_attribute.admin.inc
index b9a978a..ef33ca3 100644
--- a/uc_attribute/uc_attribute.admin.inc
+++ b/uc_attribute/uc_attribute.admin.inc
至:
diff --git ubercart/uc_attribute/uc_attribute.admin.inc ubercart/uc_attribute/uc_attribute.admin.inc
index 1c35bf8..587fa67 100755
--- ubercart/uc_attribute/uc_attribute.admin.inc
+++ ubercart/uc_attribute/uc_attribute.admin.inc
使用項目根目錄應用補丁
git apply -p0 PATCHFILE.patch
詳細:
你應該用'<projectname>/
'替換patchfile中的'a/
'和'b/
<projectname>/
'(在我的例子中它是'ubercart
')應用補丁后,您可能會看到警告
warning: ubercart/uc_attribute/uc_attribute.admin.inc has type 100755, expected 100644
沒事不用擔心。
注意! 如果patch包含多個文件的差異,則應替換所有出現的'
a/<anypath>
'和'b/<anypath>
'
注意: OP chengpei在使用git apply
時看到了其他錯誤消息 :
got a error: fatal: corrupt patch at line 7
它被記錄在“ fatal: corrupt patch at line XX
”,當分段單行時 “
在文件末尾有換行符修復它,並刪除它會導致它。
MagnusBäck 在評論中建議:
不是編輯補丁文件以刪除目錄前綴
a/
和b/
,而是運行patch -p1
以自動剝離第一個目錄組件。
要從沒有
a/
和b/
前綴的git生成diff,可以使用--no-prefix
作為git diff
的選項
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.