مطورون متعددين يحفظون couchdb في المزامنة مع بعضنا البعض

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

  •  18-09-2019
  •  | 
  •  

سؤال

أنا أفكر في استخدام CouchDB لمشروع تطوير ويب قادما.

ما هي أفضل طريقة للحفاظ على وثيقة COUGEDB REPO في المزامنة بين مختلف المطورين الذين يقومون جميعا بتشغيل التطبيق محليا؟

مثال: لنفترض أن المطور يقوم بإنشاء طريقة عرض أو تصميم جديد في الأريكة أو مجرد إضافة حقل فقط إلى طريقة عرض موجودة. كما أنها تحقق في بعض التعليمات البرمجية من جانب العميل التي تتوقع أن تكون الحقل في عرض couchdb. يأتي Developer B والتحديثات بأحدث شفرة المصدر، مما يؤدي إلى سحب التغييرات في جانب العميل في المطور. كيف يحصل المطور B على التغييرات الأريكة التي ترافق رمز جانب العميل؟

في RDBMS نموذجي، سيتم إنجاز ذلك عن طريق التحقق من مجموعة من ملفات SQL أو ترحيل قاعدة البيانات في نظام SCM. بعد قيام المطور B بتحديث قانونه الذي سيقوم بتشغيل البرامج النصية SQL أو الترحيل الجديدة لترقية مخطط قواعد البيانات.

ربما في الأريكة هناك طريقة لتصدير / استيراد مستندات التصميم وعرض التعريفات وتحقق من تلك الموجودة في نظام SCM؟ ربما أنا فقط بحاجة إلى دماغ خلفية RDBMS الخاصة بي ليتم فاحصها.

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

المحلول

لقد احتفظت عادة بملفات .JS لخريطة وجهات النظر الخاصة بي وتقليل الوظائف، وتخزين تلك الموجودة في مستودع التعليمات البرمجية الخاصة بي. النمط المشترك هو الحصول على مجلد لكل عرض، وملف .js منفصل لكل وظيفة عرض (خريطة / تقليل). مثال:

views/
    tags/
        map.js
        reduce.js
    users/
        map.js
        reduce.js

المحتوى من views/tags/map.js هو ببساطة وظيفة خريطة جافا سكريبت، على سبيل المثال:

function(doc) {
    if(doc.tags && doc.tags.length) {
        for(var index in doc.tags) {
            emit(doc.tags[index], null);
        }
    }
}

يمكنك بعد ذلك إدارة وجهات نظرك بأي طريقة تختارها، ربما تستخدم كوتشابا أو شيء من هذا القبيل لمزامنة كل شيء على مثيل Couchdb. بالطبع، لا أعرف ما هو "أفضل الممارسات"، ولكن هذا ما فعلته وهو يعمل بشكل جيد مع فريقي.

نصائح أخرى

حل التكنولوجيا المنخفض:

يبدو أن تنسيق ملف الاستيراد والاستيراد هو نوع من JSON، مما يجعله لا يسيطر على نقل ملفات SQL حولها.

اقتراحات ريان أعلاه هي فكرة جيدة. DB :: CouchDB :: مخطط هي مكتبة بيرل التي تحتوي على برنامج نصي يمكنه تصدير مستندات التصميم واستيرادها واستيرادها. قد يساعد في أتمتة الوظيفة لك.

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