سؤال

أنا من المبتدئين الأحفوريين (وتكوين CVS) في محاولة لإنشاء وإدارة مجموعة من مستودعات الحفريات الموزعة لمشروع Delphi.

لدي شجرة الدليل التالية على آلة التطوير الخاصة بي:

 Projects
     Some Project
     Delphi Components
        LookupListView
     Some Client
        Some Project For Client
        Some Other Project For Client
           Source Code
               Project Resources
               Project Database

أقوم بإعداد عنصر تحكم الإصدار الأحفوري من أجل الإصدار ومشاركة المشاريع بعض العميل بعض المشروع الآخر للرمز المصدر العميل ، والذي يحتوي على مصدر Delphi 2010 لمشروع قاعدة البيانات.

يستخدم هذا المشروع مكونات المشاريع delphi lookuplistView وهو مكون Delphi. أحتاج إلى إدراج هذا الرمز في نظام الإصدار لمشروعي. من الناحية النظرية ، سوف أحتاج إلى إدراجها في مستودعات الأحفوري الأخرى في المستقبل أيضًا.

إذا قمت بإنشاء مستودع الحفريات الخاص بي في الكود المصدري أو أي مشروع آخر لمستوى العميل ، فلا يمكنني إضافة أي رمز أعلى من هذا المستوى إلى مستودعي. ما هي الطريقة الصحيحة للتعامل مع هذا؟ الحلان اللذان يحدثان لي

1) إنشاء مستودع منفصل لـ LookuplistView والتأكد من أن كل من يستخدم مستودعًا لمشروع يشير إلى أنه "يعرف" أنه يجب عليهم أيضًا الحصول على الإصدار الحالي من هذا المشروع أيضًا. يبدو أن هذا يهزم الغرض من القدرة على الحصول على إصدار كامل من المشروع مع الخروج واحد. يتم تكبير المشكلة لأن هناك تبعيات مكونة شائعة أخرى في هذا المشروع.

2) إنشاء مستودع الحفريات الخاص بي في دليل المشاريع ، حتى أتمكن من التحقق من الملفات من مختلف المجلدات الفرعية. يبدو لي أن هذا يتضمن مجموعة كبيرة من الممرات الإضافية عند القيام بإضافة ، وأيضًا لفرض بنية الدليل الخاصة بي (بعض العميل مشروع آخر للمصدر العميل) على المستخدمين الآخرين للمستودع-في هذه الحالة ، العميل الفعلي.

أي اقتراحات موضع تقدير.

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

المحلول

أستخدم git ، ولكن يمكن تطبيق نهائي في وضعك.

لدي مستودع واحد لجميع مجلد المكونات. هذا يمنحني القدرة على الحصول عليها جميعًا مع عدد قليل من أوامر وحدة التحكم (في حالة إعادة تثبيت نظام التشغيل الخاص بي أو الذهاب إلى جهاز كمبيوتر آخر وما إلى ذلك).

أيضا لدي مستودع واحد لكل من مشاريعي. إذا كان بعض المشروع يستخدم عناصر تحكم الطرف الثالث ، فأنا أقوم بإنشاء مجلد فرعي "مكونات" وأقوم بروابط رمزية (تقاطعات) من كل مكونات مجموعة.

يحتوي هذا النهج على بعض العيوب (عندما "تعود" في تاريخ بعض المشاريع ، يمكن تعديل المكونات أيضًا. وإذا كانت العديد من المشاريع تستخدم نفس المكونات ، فقد يتسبب ذلك في بعض المشاكل). لكن لم يكن لدي أي مشاكل بعد :)

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