الترقية من دروبال 6 إلى دروبال 7:أفضل مبرمج الممارسات ؟

StackOverflow https://stackoverflow.com/questions/1750972

سؤال

على الرغم من أن أنا باستخدام دروبال منذ D4 سلسلة بدأت النامية مهنيا مع D6, حتى على الرغم من أنني فعلت موقع مختلف ترقيات - لم تواجه مهمة الحاجة إلى ميناء بلدي رمز إلى إصدار جديد.

أنا أعرف دروبال المجتمع سوف يأتي مع الكثير من الدعم التقني عن تغيير API و التغييرات المعمارية (انظر الميتة وحدة بالنسبة D5-D6 أو حتى هذه بذرة من D6-D7 كيف ل بالنسبة وحدات والمواضيع).

ومع ذلك ما أبحث عنه مع سؤالي هو أكثر في خط استراتيجية التفكير, أو بعبارة أخرى ، أنا أبحث عن المدخلات المشورة بشأن كيفية تخطيط / تنفيذ / مراجعة عملية ترقية التعليمات البرمجية الخاصة بي, في ضوء ما زميل المطورين المستفادة من التجارب السابقة.بعض الأمثلة:

  1. هل المشورة للبدء في ميناء بلدي وحدات في أقرب وقت لدي الوقت لفعل ذلك ، والحفاظ على المتزامنة D7 لبعض الوقت (حتى أنا "مستعدة" لهذا D-day) أو هل المشورة بدلا من انتظار اليوم الذي سيكون ميناء فعلا وشيك ثم ترقية وحدات D7 وإسقاط D6 الإصدار ؟
  2. فقط بعض وحدات اختبار كامل التغطية.سوف المشورة لك لإكمال اختبار التغطية D6 النسخة ذلك أن يكون جميع الاختبارات تعمل على التحقق من D7 الميناء ، أو المشورة لك أن أكتب بلدي اختبار توجيه في ترقية الوقت لاختبار D7 الإصدار ؟
  3. هل تجد أن يجري في وقت مبكر المتبني يعطيك ميزة من حيث الميزات الجديدة أفضل API أو يمكنك بدلا من ذلك تجد أنه أكثر ملاءمة تأخير التحويل وذلك للاستفادة من أكبر كمية متاحة contrib وحدات?
  4. هل حددت لنفسك معايير الجودة / معايير التقييم أو هل مجرد تعيين بار "إذا كان يعمل, أنا سعيد" ؟ لماذا ؟ إذا قمت بتعيين معايير معينة أو أهداف ما فعلوا أين / ماذا سيكونون ؟ كيف أساعدك ؟
  5. هل هناك المزالق الشائعة التي واجهت في الماضي و التي تعتقد أنها تنطبق على D6-D7 ترقية العملية ؟
  6. هو ترقية لحظة جيدة للقيام ببعض إعادة بيع ديون أو هو مجرد الذهاب الى جعل كل شيء أكثر تعقيدا من أن يكون وضع معا مرة أخرى ؟
  7. ...

هذه الأسئلة ليست قائمة شاملة ، ولكن آمل أن تعطي فكرة عن أي نوع من المعلومات أنا أبحث عن.أود أن أقول:مهما كان رأيك هو ذات الصلة ولم القائمة أعلاه يحصل على "plus"!:)

إذا لم أتمكن من التعبير عن نفسي بشكل واضح بما فيه الكفاية, الرجاء نشر التعليق مع معلومات تعتقد وأود أن أضيف في السؤال.شكرا لكم مقدما على وقتك!

PS:نعم أنا أعرف...D7 ليس بعد ذلك وسوف يستغرق الأمر عدة أشهر قبل أن مهمة وحدات contrib سيتم ترقية...لكنه من السابق لأوانه البدء في التفكير!:)

هل كانت مفيدة؟

المحلول

أسئلة جيدة, لذلك دعونا نرى:

  1. (عندما تبدأ ترقية)
    وهذا بالتأكيد يعتمد على تعقيد وحدات الميناء.إذا كان هناك حقا معقدة/الكبيرة ، قد يكون من المفيد أن تبدأ في وقت مبكر من أجل العثور على بقع صعبة في حين لا يجري تحت الضغط.أصغر/معيار منها كنت في محاولة للعثور على أكبر فتحة الوقت في وقت لاحق أين يمكنني ميناء العديد منهم في صف واحد من أجل الحصول على الأشياء الروتينية يحفظون بسرعة (و الاستفادة من المحتمل تحسين الوثائق).

  2. (test)
    عادة أنا أقول أن وجود اختبار جيد التغطية قبل البدء في إعادة بيع ديون/ترقية بالتأكيد سوف يكون من المستصوب.ولكن بالنظر إلى أن دروبال-7 يدخل تغييرا كبيرا بشأن إطار اختبار قبل نقله إلى جوهر ، أتوقع الحاجة إلى إعادة كتابة كمية كبيرة من الاختبارات على أي حال.حتى إذا كان هناك حاجة للحفاظ على دروبال-6 إصدارات بعد الهجرة لكنت حفظ الوقت/مشكلة وتهدف إلى زيادة التغطية بعد ترقية.

  3. (في وقت مبكر المتبني مقابلننتظر ونرى)
    باستخدام دروبال منذ 4.7 الإصدار لدينا دائما انتظر الأولى على الأقل رسميا عن إطلاق الإصدار الرئيسي الجديد قبل حتى التفكير في ترقية.مع دروبال 6, نحن ننتظر آراء وحدة قبل ترقية أول موقع و لا يزال لدينا بعض المشاريع الصغيرة على دروبال-5 ، كما أنها تعمل على ما يرام و أنه سيكون من الصعب تبرير إضافي فاتورة عملائنا طالما لا يزال هناك صيانة/تصحيحات الأمان لذلك.هناك فقط الكثير من الوقت في اليوم و هناك دائما هذا تراكم لإصلاح الأخطاء, ميزات لإضافة وغيرها ، لذلك لا فائدة من اللعب لم تنته مع التكنولوجيا بينما هناك أكثر وشيك الأشياء أن تفعل ذلك على الفور لصالح عملائنا.الآن هذا سيكون بالتأكيد مختلفا لو كنا للحفاظ على واحد أو أكثر 'الرسمية' وحدات أسهم ، كما تقدم في وقت مبكر الميناء سيكون شيء جيد.
    أنا قليلا في مأزق هنا - تكون في وقت مبكر المتبني بالتأكيد فوائد المجتمع ، كما شخص أن يجد أن الخلل قبل أن يتمكنوا من الحصول على ثابت, ولكن من ناحية أخرى ، فإنه يجعل قليلا من الناحية التجارية لمكافحة ساعة بعد ساعة مع أخطاء الآخرين قد وجدت/ثابت لو انتظرت لفترة أطول قليلا.طالما علي أن أفعل هذا, أنا بحاجة إلى ساعتي الموارد تحاول إقامة توازن مقبول بين خدمة المجتمع والاستفادة منه :-/

  4. (معايير الجودة)
    "إذا كان يعمل, أنا سعيد" فقط لا قطع عليه ، وأنا لا أريد أن أكون سعيدة للحظات فقط, ولكن غدا أيضا.حتى واحد من معايير الجودة هو أنني بحاجة إلى أن تكون (إلى حد ما) على يقين من أن كنت 'grokked' مفاهيم جديدة جيدا بما فيه الكفاية لكي لا يجعل الأشياء تعمل, ولكن جعلها تعمل كما ينبغي.الآن هذا هو الصعب تحديد أكثر دقة ، كما أنه من الواضح أن من المستحيل معرفة إذا كان أحد 'حصلت' قبل 'الحصول عليها' ، لذلك يتلخص الشعور الغريزي/تمييز 'نعم, نوعا ما يعمل' مقابل'نعم, هذا يبدو صحيحا', وعلى المرء أن يتقبل تماما بانتظام أكون مخطئا في هذا.
    وقال واحد النقطة بالذات أنا أبحث عن 'التدخل في أقرب وقت ممكن'.كما مبتدئا ، وكثيرا ما أنب الأشياء 'بعد' خلال تطبيق السمات المرحلة ، في حين أنه يمكن أن يكون أسهل بكثير من تطبيق 'الإصلاح' في وقت سابق في تجهيز سلسلة طريق واحد هوك أو غيره.حتى الآن كلما أوشكت أن 'ضبط' شيء في موضوع الطبقة, أنا تعمدت أن تأخذ القليل من الوقت للتحقق مما إذا كان هذا لا يمكن القيام به أكثر نظافة/متوافق خلال ربط في وقت سابق.كما أتوقع دروبال-7 لإضافة المزيد من تركيب الخيارات, هذا شيء أنا سوف تدفع المزيد من الاهتمام ، كما أنه عادة ما يقلل من الصراعات المفاجئ 'كسر الأشياء' عند إضافة وحدات جديدة.

  5. (الأخطاء الشائعة)
    حسنا - أساسا ترقية المبكر معرفة ذلك/في بين واحد أو أكثر من الوحدات النمطية المطلوبة لم تكن تتوفر في الإصدار الجديد في كل شيء ، أو فقط في dev/ألفا/بيتا في وقت مبكر الدولة.لذلك أود التأكد من تجميع كاملة قائمة المستخدمة/مطلوب وحدات أولا ، الإدراج ترقية الدولة ، جنبا إلى جنب مع الفحص السريع من مشكلة قوائم الانتظار.
    إلى جانب ذلك لدي حتى الآن دائما جدا يسر مع الإصدارات الجديدة و التحسينات, و أنا أتطلع ل دروبال-7 مرة أخرى.

  6. (إعادة بيع ديون في حين ترقية)
    يمكن للمرء أن يقول هذا هو ترقية كبيرة بدلا من ذلك إعادة بيع ديون في حد ذاته, لذلك ليست هناك حاجة إلى إضافة إلى التعقيد من خلال إعادة هيكلة عدم ترقية الاشياء ذات الصلة.من ناحية أخرى, إذا كان لديك بالفعل إلى أدنى وحدات القطع على أي حال, لماذا لا تستخدم هذه الفرصة لجعلها اصلاح الكبرى ؟ كنت أحاول رسم خط على أساس التعقيد - كبيرة/وحدات معقدة سأفعل الميناء مباشرة قدر الإمكان ، ريفاكتور أكثر في وقت لاحق إذا لزم الأمر.أصغر وحدات, لا يهم حقا ، واحتمال إدخال خفية الأخطاء يجب أن تكون صغيرة بدلا من ذلك.

  7. (أشياء أخرى)
    ...تحتاج إلى التفكير حول هذا الموضوع ...


حسنا الأشياء الأخرى:

  • الاحتياجات من الموارد - إعطاء بعض دروبال-7 المواضيع ، يبدو من المرجح أن ترتفع ، لذلك يجب أن يتم تقييمها من قبل ترقية المواقع الصغيرة التي تجلس على مشترك/مقيد حساب استضافة.

  • أحدث الإصدارات الأولى - وهذا هو واحد بدلا واضحة و أكد دائما في الترقية أدلة ، ولكن الجدير بالذكر:ترقية الأساسية وجميع وحدات أحدث الإصدار الحالي أولا قبل القيام ترقية رئيسية ، ترقية المدونة المحتمل جدا أن تعتمد على أحدث الجدول/هياكل البيانات للعمل بشكل صحيح.نظرا Drupals 'جزئية', خطوة واحدة في كل مرة تحديث الاستراتيجية ، فإنه سيكون من الصعب جدا تنفيذ ترقية التعليمات البرمجية التي من شأنها الكشف عن مختلف ما قبل الترقية الدول وتصرف وفقا لذلك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top