(लंबी कहानी ...)क्या गिट-लागू "दूषित पैच" का कारण बनता है?
मैं वर्तमान सदी के लिए एक विशाल पीएचपी आवेदन परवरिश के बीच में हूँ ... ;-) ... जबकि अन्य टीमों बनाए रखने के लिए जारी है इसका मौजूदा संस्करण
यह अब तक 275 पैच तक पहुंच गया है। समस्या यह है कि हमने जो बदलाव किए हैं, उनमें से एक है <?
टैग <?php
, और कोड में कई समान परिवर्तनों को परिवर्तित करना है। जिनमें से सभी, निश्चित रूप से, पैच लगाने से रोकते हैं, क्योंकि (वास्तव में ...) स्रोत कोड मैच नहीं है।
तो, मैंने पैच फ़ाइलों को संपादित करने के लिए एक छोटी सी स्क्रिप्ट लिखने के लिए सोचा: पैच में टैग बदलने के लिए।
जो मुझे मिल रहा है, हालांकि, corrupt patch
है।
तो, मैं क्या जानना चाहता हूं: इस संदेश का कारण बनता है? यही कहना है कि गिट की किस तरह की त्रुटियां तलाश रही हैं, जब यह इस संदेश के साथ आता है? मुझे "मेरे ट्वीकर को ट्विक" करने की ज़रूरत है ... अहम ... ताकि संपादित पैच काम कर सकें। (नायब मूल पैच-फ़ाइलें, इससे पहले कि मैं उन्हें tweak, नहीं "भ्रष्ट" हैं, तो यह कुछ मैं कर रहा हूँ होना चाहिए।)
मेरे स्क्रिप्ट पूर्वोक्त पीएचपी टैग को बदलने के लिए प्रयास कर रहा है, और <?php echo
, और एक समारोह-नाम। वैश्विक प्रीग-प्रतिस्थापन से कुछ भी नहीं। मैं आसानी से नहीं देखता कि मैं क्या कर सकता हूं, जो हम करेंगे, क्या हम गिट को "संरचनात्मक चिंता" कहेंगे। लेकिन जाहिर है, कुछ है।
उदाहरण पैच: corrupt patch at line 37
...
From 342c5939da8cf4cbe495be7d635cd627bd2a44ed Mon Sep 17 00:00:00 2001
From: xxx <[email protected]>
Date: Wed, 17 Feb 2016 03:45:31 +0000
Subject: [PATCH 001/275] Make it all work
---
catalog/includes/modules/shipping/upsFreeGround.php | 2 +-
catalog/product_info_v3.php | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/catalog/includes/modules/shipping/upsFreeGround.php b/catalog/includes/modules/shipping/upsFreeGround.php
index 45a6da4..55ccecb 100755
--- a/catalog/includes/modules/shipping/upsFreeGround.php
+++ b/catalog/includes/modules/shipping/upsFreeGround.php
@@ -194,7 +194,7 @@ function quote($method = '') {
// Can probably combine this with the above, eventually
$allFreeBW2016Plaques = false;
- if (STORES_ID == 10) {
+ if ((STORES_ID == 10) || (STORES_ID == 26)) {
$allFreeBW2016Plaques = true;
foreach ($order->products as $aProduct) {
$thisNote = $aProduct['product_specific_notes'];
diff --git a/catalog/product_info_v3.php b/catalog/product_info_v3.php
index 09d88de..10d9b76 100644
--- a/catalog/product_info_v3.php
+++ b/catalog/product_info_v3.php
@@ -186,7 +186,7 @@ function doRequestComplete() {
}
}
<?php -if ((STORES_ID == 10) && (in_array($products_id, $bwFreePlaqueIDList2016))) { ?>
+if (((STORES_ID == 10) || (STORES_ID == 26)) && (in_array($products_id, $bwFreePlaqueIDList2016))) { ?>
function doCheckBW2016PlaqueProperty() {
thePropertyNumber = document.getElementById('propertyToCheck');
if (thePropertyNumber.value == "") {
@@ -1426,7 +1426,7 @@ if($combo_count>0) { ?>
?>
</div> <!-- div_add_to_cart -->
</div> <!-- cart_info_row2 -->
- <?php if ((STORES_ID == 10) && (in_array($products_id, $bwFreePlaqueIDList2016))) {
+ <?php if (((STORES_ID == 10) || (STORES_ID == 26)) && (in_array($products_id, $bwFreePlaqueIDList2016))) {
// First, let's see if we are "sold out"
$query = "select bw_plaque_2016_id from bw_plaque_2016 where first_one_free='1' limit 1";
$bwpRes = tep_db_query($query);
@@ -1629,7 +1629,7 @@ DIVCONTAINER;
</table> <!--pageTable for sure -->
<script type='text/javascript'>
- <?php if ((STORES_ID == 10) && (in_array($products_id, $bwFreePlaqueIDList2016))) { ?>
+ <?php if (((STORES_ID == 10) || (STORES_ID == 26)) && (in_array($products_id, $bwFreePlaqueIDList2016))) { ?>
function doFreePlaquePriceChange() {
// Change the quantity to 1
$('quantityToAdd').setValue('1');
--
2.6.4 (Apple Git-63)
क्या पैच फ़ाइलों में sha1 हैश हैं? – melpomene
मुझे यकीन नहीं है कि मैं क्या देख रहा हूं। क्या आप मुझे बता सकते हैं कि पैच फ़ाइल में ऐसी चीज कैसी दिखती है? क्या ऐसी किसी भी हैश को अनदेखा करने के लिए आवेदन करना संभव है? (मैं समझता हूं कि एक पैच में भ्रष्टाचार विरोधी जांच हो सकती है ... लेकिन, अगर ऐसा होता है, तो मैं इस मामले में इसे अनदेखा करना चाहता हूं।) –
क्या आप भ्रष्ट पैच का उदाहरण पोस्ट कर सकते हैं? – melpomene