Difference between revisions of "X-Cart:To apply a patch manually"
m (→What is diff file?) |
m |
||
Line 7: | Line 7: | ||
where: | where: | ||
− | * 942 - indicates the number of the first line in the original code (before | + | * 942 - indicates the number of the first line in the original code (before patch application) |
* 8 - indicates the number of lines in the original code (before patch application) | * 8 - indicates the number of lines in the original code (before patch application) | ||
* 940 - indicates the number of the first line in the changed code (after patch application) | * 940 - indicates the number of the first line in the changed code (after patch application) | ||
* 7 - indicates the number of lines in the changed code (after patch application) | * 7 - indicates the number of lines in the changed code (after patch application) | ||
− | Then follows the file code | + | Then follows the file code that includes lines marked with the "+" and "-" signs. Lines marked with "+" are the lines that you need to add in the file to be patched. Lines marked with "-" are the lines that you need to remove from the file to be patched. |
− | Under 'Index:' you will find the name of the file | + | Under 'Index:' you will find the name of the file to be patched, for example: |
<pre>Index: include/func/func.category.php</pre> | <pre>Index: include/func/func.category.php</pre> | ||
Line 22: | Line 22: | ||
<pre>Index: include/func/func.category.php | <pre>Index: include/func/func.category.php | ||
@@ -585,9 +585,7 @@ | @@ -585,9 +585,7 @@ | ||
− | + | ||
− | + | $cat = abs(intval($cat)); | |
− | + | ||
- $to_search = | - $to_search = | ||
- $search_condition = | - $search_condition = | ||
- $join_tbl = array(); | - $join_tbl = array(); | ||
+ $to_search = $search_condition = $join_tbl = array(); | + $to_search = $search_condition = $join_tbl = array(); | ||
− | + | ||
− | + | $from = "$sql_tbl[categories] AS node "; | |
− | + | ||
@@ -942,8 +940,7 @@ | @@ -942,8 +940,7 @@ | ||
− | + | 'c.rpos' | |
− | + | ); | |
− | + | ||
- $search_condition = | - $search_condition = | ||
- $join_tbl = array(); | - $join_tbl = array(); | ||
+ $search_condition = $join_tbl = array(); | + $search_condition = $join_tbl = array(); | ||
− | + | ||
− | + | if ($current_area == 'A' || $current_area == 'P') { | |
</pre> | </pre> | ||
Line 46: | Line 46: | ||
==General instructions== | ==General instructions== | ||
− | 1. Open the diff file in a text editor | + | 1. Open the diff file in a text editor. |
− | 2. Edit the file (in our example, include/func/func.category.php): | + | 2. Edit the file (in our example, <u>include/func/func.category.php</u>): |
− | :* Find the lines | + | :* Find the lines marked with "-" in the text of the patch and remove them. |
− | :* Insert the lines | + | :* Insert the lines marked with "+" in the text of the patch. |
− | In our example, the original code (before the patch | + | In our example, the original code (before applying the patch) would look like: |
<pre> | <pre> | ||
Line 77: | Line 77: | ||
Total lines: 9 and 8 in each hunk correspondingly. | Total lines: 9 and 8 in each hunk correspondingly. | ||
− | The changed code (after the patch | + | The changed code (after applying the patch) would look like: |
<pre> | <pre> | ||
Line 100: | Line 100: | ||
[[Category:X-Cart user manual]] | [[Category:X-Cart user manual]] | ||
− | |||
[[Category:X-Cart user manual]] | [[Category:X-Cart user manual]] |
Revision as of 11:15, 20 May 2011
What is diff file?
Diff files consist of "hunks". Each "hunk" starts with a line like this:
@@ -942,8 +940,7 @@
where:
- 942 - indicates the number of the first line in the original code (before patch application)
- 8 - indicates the number of lines in the original code (before patch application)
- 940 - indicates the number of the first line in the changed code (after patch application)
- 7 - indicates the number of lines in the changed code (after patch application)
Then follows the file code that includes lines marked with the "+" and "-" signs. Lines marked with "+" are the lines that you need to add in the file to be patched. Lines marked with "-" are the lines that you need to remove from the file to be patched.
Under 'Index:' you will find the name of the file to be patched, for example:
Index: include/func/func.category.php
Example of diff file
Index: include/func/func.category.php @@ -585,9 +585,7 @@ $cat = abs(intval($cat)); - $to_search = - $search_condition = - $join_tbl = array(); + $to_search = $search_condition = $join_tbl = array(); $from = "$sql_tbl[categories] AS node "; @@ -942,8 +940,7 @@ 'c.rpos' ); - $search_condition = - $join_tbl = array(); + $search_condition = $join_tbl = array(); if ($current_area == 'A' || $current_area == 'P') {
General instructions
1. Open the diff file in a text editor.
2. Edit the file (in our example, include/func/func.category.php):
- Find the lines marked with "-" in the text of the patch and remove them.
- Insert the lines marked with "+" in the text of the patch.
In our example, the original code (before applying the patch) would look like:
line 585: line 586: $cat = abs(intval($cat)); line 587: line 588: $to_search = line 589: $search_condition = line 590: $join_tbl = array(); line 591: line 593: $from = "$sql_tbl[categories] AS node "; line 594: ... line 942: 'c.rpos' line 943: ); line 944: line 945: $search_condition = line 946: $join_tbl = array(); line 947: line 948: if ($current_area == 'A' || $current_area == 'P') { line 949:
Total lines: 9 and 8 in each hunk correspondingly.
The changed code (after applying the patch) would look like:
line 585: line 586: $cat = abs(intval($cat)); line 587: line 588: $to_search = $search_condition = $join_tbl = array(); line 589: line 590: $from = "$sql_tbl[categories] AS node "; line 591: ... line 940: 'c.rpos' line 941: ); line 942: line 943: $search_condition = $join_tbl = array(); line 944: line 945: if ($current_area == 'A' || $current_area == 'P') { line 946:
Total lines: 7 and 7 in each hunk correspondingly.