سؤال

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

http://github.com/wspr/pstool/tree/master

الحزمة نفسها مشتقة من ملف واحد (في هذه الحالة ، pstool.تكس) والتي عند معالجة تنتج الوثائق ، التمهيدي المثبت الملف و الملفات الفعلية التي تشكل حزمة كما يتم استخدامه من قبل اللاتكس.

من أجل جعل من السهل على المستخدمين الذين يرغبون في تحميل هذه الأشياء لا تشمل جميع مشتقة الملفات المذكورة أعلاه في مستودع نفسها فضلا عن الملف الرئيسي pstool.تكس.وهذا يعني أنه سوف يكون ضعف عدد من التغييرات في كل مرة كنت ارتكاب لأن ملف الحزمة pstool.قذر هو إنشاء مجموعة فرعية من الملف الرئيسي.

هل هذا تحريف النسخة السيطرة ؟


@جون Limjap أثار نقطة جيدة:

هل هناك طريقة أخرى لنشر الملفات التي تم إنشاؤها في أماكن أخرى من أجل تحميل, بدلا من الاعتماد على التحكم في الإصدار أن يكون لديك تحميل الخادم ؟

هذا هو جوهر المسألة في هذه الحالة.نعم, إصدارات حزمة يمكن الحصول عليها من أماكن أخرى.لذلك لا حقا أكثر منطقية فقط نسخة غير الملفات التي تم إنشاؤها.

من ناحية أخرى ، @Madir's تعليق:

الراحة التي حقيقي المتكررة ، تفوق التكلفة التي تتحمل وراء الكواليس

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

و أعتقد أن هذا هو أكثر أهمية في حالة استخدام بلدي مجموعة معينة من المشاريع.

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

المحلول

أنا باستخدام السلحفاة إس الصغيرة نظام ASP.NET التنمية.معظم رمز تفسير ASPX ولكن هناك حوالي اثني عشر الثنائية DLLs التي تم إنشاؤها بواسطة دليل تجميع الخطوة.في حين أنه لا يجعل الكثير من معانيها أن تكون هذه التعليمات البرمجية المصدر إصدار من الناحية النظرية ، فإنه بالتأكيد يجعلها ملائمة لضمان بشكل صحيح معكوسة من بيئة التطوير على نظام الإنتاج (نقرة واحدة).كما في حالة الكوارث التراجع إلى الخطوة السابقة مرة أخرى بنقرة واحدة في إس.

لذا بت رصاصة في إس الأرشيف - الراحة التي حقيقي المتكررة ، تفوق التكلفة التي تتحمل وراء الكواليس.

نصائح أخرى

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

سيناريو واحد لا يمكن أن نتصور فيها وهذا يمكن أن تكون مفيدة إذا 'علامات' في إصدارات محددة من المنتج ، للاستخدام في بيئة الإنتاج (أو أي بيئة تطوير) حيث الأدوات المطلوبة لتوليد الناتج قد لا تكون متاحة.

ونحن أيضا استخدام الأهداف في بناء البرامج النصية التي يمكن أن تخلق و تحميل الأرشيف مع النسخة التي تم إصدارها من منتجاتنا.هذا يمكن تحميلها على خادم إنتاج أو HTTP server للتحميل من قبل المستخدمين من المنتجات الخاصة بك.

ليس بالضرورة ، على الرغم من أن أفضل الممارسات من أجل التحكم في مصدر ننصح أن لا تشمل الملفات التي تم إنشاؤها لأسباب واضحة.

هل هناك طريقة أخرى لنشر الملفات التي تم إنشاؤها في أماكن أخرى من أجل تحميل, بدلا من الاعتماد على التحكم في الإصدار أن يكون لديك تحميل الخادم ؟

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

كما تقول الحفاظ على المستمدة الملفات في التحكم في الإصدار فقط يزيد من كمية الضوضاء لديك للتعامل معها.

في بعض الحالات نقوم به, لكنه أكثر من مسؤول النظام نوع من استخدام القضية ، حيث الملفات التي تم إنشاؤها (أقول DNS ملفات المنطقة بنيت من سيناريو) قد لا يتجزأ من الفائدة في حد ذاتها ، و تنقيح التحكم الخطي أكثر للحسابات من المتفرعة-و-tagging "عنصر تحكم مصدر".

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