ম্যাজেন্টো সিই প্যাচ প্রয়োগ করা


15

প্যাচ বিভাগের অধীনে ম্যাজেন্টো ডাউনলোড পৃষ্ঠা অনুযায়ী

দয়া করে আপনার ম্যাজেন্টো মূল ডিরেক্টরিতে প্যাচটি আপলোড করুন এবং উপযুক্ত এসএসএইচ কমান্ডটি চালান: ফাইল এক্সটেনশান সহ প্যাচ ফাইলগুলির জন্য sh .sh: sh patch_file_name.sh উদাহরণ: sh PATCH_SUPEE-1868_CE_1.7.0.2_v1.sh

ম্যাজেন্টো shতাদের প্যাচ রানার চালানোর জন্য কমান্ডের সরাসরি অনুরোধের পরামর্শ দেয় । ফাইল এক্সটেনশন এটি .shসমর্থন করে।

তবে, আপনি যদি প্রতিটি প্যাচ রানার ফাইলের শীর্ষের দিকে তাকান তবে শেবাং লাইনটি নির্দেশ করে bash

#!/bin/bash
# Patch apllying tool template
# v0.1.2
# (c) Copyright 2013. Magento Inc.
#

আমার মধ্যে প্রোগ্রামার সোর্স ফাইল বিশ্বাস করতে চায়, কিন্তু প্রক্রিয়া মান্য করা কি Magento ওয়েবসাইটে লেখা চায় wonk, অসূয়ক বিস্ময়ের যদি প্যাচ বিরুদ্ধে পরীক্ষা করা হয়েছে ব্যাশ এবং SH মধ্যে পার্থক্য


প্যাচ প্রক্রিয়াটি .ডিফ ফাইলগুলিকে জিপআপ করা যত সহজ। স্ক্রিপ্টগুলিতে REQUIRED_UTILS='sed patch'আমি সমস্ত দেখতে পাই .sh। সাম্প্রতিক সংস্করণগুলির জন্য আপগ্রেডিং ডকগুলি স্টেরিও নির্দেশাবলীর মতো পড়ে এবং আপগ্রেড করা এমন বেদনাদায়ক হওয়া উচিত নয়।
B00MER

2
আমি কিছুটা অন্ধভাবে প্যাচটি আনব, chmod + x এবং এটি চালাও। (ভাল আমি প্রথমে বিষয়বস্তুগুলি যাচাই করি) তবে আমি এটি স্থানীয়ভাবে চালিত (ম্যাক ভিত্তিক দেব) যাতে আমি শাখাটি গিট করতে পারি এবং স্থাপনার আগে একটি পরীক্ষার শাখায় প্রতিশ্রুতিবদ্ধ করতে পারি।
ব্যারি কার্লিয়ন

3
@ B00MER এটি জটিল আমি ব্যক্তিগতভাবে সম্মত, কিন্তু প্রযুক্তি বুদ্ধিমানের জন্য কিন্তু ইউনিক্স নাগরিকদের পক্ষে ম্যানুয়ালি প্যাচ প্রয়োগ করা খুব দূরের পদক্ষেপের মতো মনে হয়। আমি প্যাচ ইনস্টলারের পিছনে অনুপ্রেরণাগুলি বুঝতে পারি।
অ্যালান ঝড়

শুধু এই সম্পর্কে আবার চিন্তা। উদাহরণস্বরূপ শেবাং লাইনগুলি #! / বিন / পিএইচপি হতে পারে এবং শেবাং লাইনটি পড়তে এবং স্ক্রিপ্টটি শেবাংয়েড প্রোগ্রামে পাস করার জন্য "যথেষ্ট" প্রয়োগ করে sh ম্যানুয়াল প্রয়োগের বিষয়টিতে, প্যাচটিতে যাইহোক গিট ডিফগুলি রয়েছে, যাতে আপনি নিজেকে "সহজেই" প্রয়োগ করতে পারেন। তবে, কোনও প্যাচ পাশাপাশি (মূল সম্পাদনা ব্যতীত কোনটি ভাল) কেবলমাত্র পরিবর্তিত ফাইলের সাথে জিপ সরবরাহ করতে ম্যাগান্টোকে জিজ্ঞাসা করার কোনও যুক্তি রয়েছে?
ব্যারি কার্লিয়ন 23'14

আরেকটা জিনিস. স্থানীয় ব্যবহারকারীদের ফাইল সিস্টেম সম্পর্কে এক্সটেনশনহীন ফাইলগুলি ভাসমান এড়াতে .txt ব্যতীত কোনও ফাইল এক্সটেনশনের ব্যবহার সম্ভবত কম বুদ্ধিমানের জন্য এটি আরও যুক্তিযুক্ত করে তোলে। আমি মনে করি বাশ এবং শি যেভাবেই বিনিময়যোগ্য।
ব্যারি কার্লিয়ন 23'14

উত্তর:


8

আপনার অবশ্যই বাশ ব্যবহার করা উচিত। প্যাচের 14 লাইনে আপনি স্পষ্টভাবে নির্দেশ করেছেন এই কোড:

if (( $? != 0 )); then

$((XCU sh এ একটি বৈধ পাটিগণিতের প্রকাশ , তবে ((তা নয়))

অনেকগুলি ইউনিক্স-এর মতো প্ল্যাটফর্মগুলিতে, তবে /bin/shএটির জন্য কেবল একটি সিমলিংক /bin/bash। নামের সাথে ডাকা হলে sh, ব্যাশ তার কিছু পসিক্সলি-সীমিত আচরণ অক্ষম করে, তবে এটি সমস্ত কিছু নয়। সম্ভবত এই প্যাচগুলি sh হিসাবে ডাকা বাশের পক্ষে ভাল কাজ করবে।


এই ক্ষেত্রে, স্ক্রিপ্টটি sh এর অধীনে কার্যকর হচ্ছে না, sh বর্ণিত শেবাং লাইন প্রোগ্রামে ডাম্পিং করছে?
ব্যারি কার্লিয়ন

আসলে শ্যাবাং ব্যাখ্যার জন্য কার্নেল দায়বদ্ধ। আপনি যদি chmod +x script && ./scriptকার্নেলটি প্রথম বা দ্বিতীয় আর্গুমেন্ট হিসাবে স্ক্রিপ্ট ফাইলের সাথে শেবাং লাইনে কমান্ডটি কার্যকর করার চেষ্টা করবেন। পরিস্থিতিগুলির উপর নির্ভর করে কোনও প্রক্রিয়া গাছের সাথে কোনও শেল জড়িত থাকার কোনও গ্যারান্টি নেই। আপনি যদি shকোনও স্ক্রিপ্টটিকে এর তর্ক হিসাবে চালিত করেন তবে শেবাং লাইন উপেক্ষা করা হবে।
কোজিরো

সুতরাং এর অর্থ আমি প্যাচ নির্দেশাবলী ভুল অনুসরণ করছি। যেমন তারা বলছেন শ স্ক্রিপ্ট করুন তবে আমি কেবল তা করি / / স্ক্রিপ্টটি কী মজার
ব্যারি কার্লিয়ন

-2

ভবিষ্যতে যদি কাউকে সহায়তা করে তবে আমি প্যাচ প্রয়োগ করতে পিএইচপিস্টর্ম ব্যবহার করেছি এবং এর প্যাচ সরঞ্জামটি দুর্দান্ত। কোনও সমস্যা ছাড়াই প্যাচ প্রয়োগ করতে 30 সেকেন্ডেরও কম সময় লেগেছিল এবং আপনি ফাইলগুলির পার্থক্যগুলি দেখতে ও যেতে পারেন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.