تخصيص أرقام البنيات
يصف هذا الموضوع كيفية تعريف بنية تزايديه باستخدام قالب الترقية. للحصول على مزيد من المعلومات حول قالب الترقية راجع تعريف بنية بإستخدام قالب الترقية. يمكنك تنفيذ هذا الإجراء بسهولة أكبر باستخدام القالب الافتراضي. لمزيد من المعلومات، راجع تعريف بنية بإستخدام القالب الافتراضي.
يمكنك تخصيص بنية Team Foundation عن طريق إنشاء المهام المخصصة الخاصة بك التي تعمل أثناء البناء. يشرح هذا الموضوع الخطوات التي يجب أن تتبع لتخصيص بنية Team Foundation تعريف بنية مع المهمة التي تنشئ أرقام البنيات.
المتطلبات الأساسية
قبل إنشاء المهمة لتخصيص أرقام البناء, تأكد من أن لديك ما يلي في مكان:
الوصول إلى الملف TFSBuild.proj الخاص بتعريف البنية الذي تريد تخصيصه.
يمكن إقران الملف TFSBuild.proj مع أكثر من تعريف للبنية. لتحديد موقع عنصر التحكم بالمصدر لملف TFSBuild.proj حدد تعريف البنية في مجلد بنياتفي مستكشف الفريق ، انقر علي اليمين فوقه, ثم انقر فوق تحرير. يتم عرض موقع عنصر التحكم بالمصدر الخاص بالملف TFSBuild.proj على جزء ملف المشروعالخاص بمربع الحوار تعريف البنية. افتراضياً، الملف TFSBuild.proj موجود في المجلد $/ MyTeamProject /TeamBuildTypes MyBuildName في التحكم بالإصدار Team Foundation. MyTeamProject هو اسم مشروع الفريق ويكون العقدة الجذر لكافة مصادر مشروع الفريق الخاص بك. MyBuildName هو الاسم الذي أعطيته إلى تعريف البناء الأول المقترن بالملف TFSBuild.proj. للحصول على مزيد من المعلومات حول كيفية إنشاء بنية Team Foundation أنواع البنية, راجع إنشاء تعريف بناء أساسي.
هام
عند تخصيص الملف TFSBuild.proj فتخصص كل تعريف بنية مقترنة معه.
مساحة عمل محلية التي تحتوي على ملفات فريق العمل الخاص بك وملفات بنية على الكمبيوتر المحلي الخاص بك.
للمزيد من المعلومات، راجع كيفية: إنشاء مساحة عمل وملفات Get وكيفية: الحصول على المصدر لـ Project الفريق الخاص بك.
الأذونات المطلوبة.
لتنفيذ هذه المهمة, يجب أن يكون لديك إدارة بنيةوإذن إدارة مساحات العمل تعين إلي السماح. يجب أن يكون لديك أيضاً أذونات الإيداع و السحبمعينة إلي السماح. لمزيد من المعلومات، راجع أذونات خادم أساس الفريق.
كتابة مهمة رقم البنية.
إلى كتابة مهمة الخاصة بك، يمكنك أما تطبيق ITaskالواجهة مباشرة، أو اشتقاق الفئة من فئة مساعد Task. ITask هو defined in the Microsoft.بنية.Framework.dll assembly and Task هو defined in the Microsoft.بنية.Utilitites.dll assembly.
To customize the build number that هو generated by بنية Team Foundation, you must insert your task into the BuildNumberOverrideTarget target. BuildNumberOverrideTarget requires an output property called BuildNumber. The Output attribute indicates that the property هو the output of your custom task. لمزيد من المعلومات حول هذه الأهداف بنية Team Foundation راجع أهداف بنيات Team Foundationالقابلة للتخصيص.
لكتابة المهمة المخصصة الخاصة بك.
إنشاء مكتبة الفئات#Visual C تسمى MyTask التي تحتوي على المهمة المخصصة الخاصة بك.
لمزيد من المعلومات، راجع فئات المكون.
على القائمة مشروع، انقر فوق إضافة مرجع ، وحدد Microsoft.Build.Framework Microsoft.Build.Utilities من مربع الحوار إضافة مرجع.
إدراج التعليمات البرمجية التالية للملف class.cs.
يرث هذا المثال من فئة المساعد Task ويستخدم خصائص الـ DateTime UtcNow و Ticks لإنشاء رقم البنية.
using System; using Microsoft.Build.Utilities; using Microsoft.Build.Framework; namespace BuildNumberGenerator { public class BuildNumberGenerator:Task { public override bool Execute() { m_buildNumber = DateTime.UtcNow.Ticks.ToString(); return true; } private string m_buildNumber; [Output] public string BuildNumber { get { return m_buildNumber; } } } }
بناء مكتبة الفئة الخاصة بك لإنتاج MyTask.dll.
أنسخ الـ DLL المضمن إلى مجلد مساحة العمل المحلية والذي يحتوي أيضاً على الملف TFSBuild.proj لتعريف البنية الخاصة بك.
هام
يجب أن تكون قمت بتعيين موقع عنصر التحكم بالمصادر للملف TFSBuild.proj إلى مساحة العمل المحلية الخاصة بك قبل وجود بنية الدليل على جهاز كمبيوتر العميل. لمزيد من المعلومات، راجع كيفية: الحصول على المصدر لـ Project الفريق الخاص بك.
إذا تم تخزين الملف TFSBuild.proj الخاص بك في المجلد الافتراضي في عنصر التحكم بالمصادر ،النسخة المحلية من الملف موجود في < الجذر >: \ مساحة العمل المحلية \TeamBuildType\ MyBuildName على جهاز كمبيوتر العميل. مساحة العمل المحلية هو المجلد المحلي الذي تم تعيين مشروع الفريق إليه ، MyTeamProject هو اسم مشروع الفريق الخاص بك و MyBuildName هو الاسم الذي أعطيته إلى تعريف البناء الأول المقترن مع الملف TFSBuild.proj هذا.
إضافة الملف DLL إلي مصدر التحكم
بعد إنشاء ملف الـ DLL الذي يحتوي على المهام المخصصة الخاصة بك يجب إضافته إلى التحكم بالإصدار Team Foundation. يمكنك استخدام أوامر الـtf add و tf checkin لإضافة وإيداع الـ DLL إلى نفس الموقع مثل ملف TFSBuild.proj الخاص بتعريف البناء الخاص بك. للمزيد من المعلومات، راجع اضافه أمر وأمر الإيداع.
لإضافة وإيداع التجميع الخاص بك.
أنقر Start وأشر إلي All Programs ، Microsoft Visual Studio 9.0 ، Visual Studio Toolsثم أنقر Visual Studio 2008 Command Prompt. إفتح مساحة العمل المحلية التي قمت بتعيينها للمشروع الفريق التي تحتوي على نوع البناء الذي تريد تخصيصه.
على سبيل المثال، اكتب ما يلي في موجه الأوامر:
> cd c:\MyTeamProject
حيث MyTeamProject هو الاسم الخاص بمشروع الفريق الخاص بك.
إنتقل إلى الموقع حيث يخزن الملف TFSBuild.proj.
على سبيل المثال، اكتب ما يلي في موجه الأوامر:
c:\MyTeamProject>cd TeamBuildTypes\MyBuildName
حيث MyBuildName هو الإسم الخاص بتعريف البناء.
لإضافة الملف التحكم بالإصدار Team Foundation اكتب الأمر التالي.
c:\MyTeamProject\TeamBuildTypes\MyBuildName> tf add MyTask.dll
لإيداع الملف الخاص بك لـ التحكم بالإصدار Team Foundation أكتب الأمر التالي.
c:\MyTeamProject\TeamBuildTypes\MyBuildName> tf checkin MyTask.dll
يمكنك أيضاً استخدام مستكشف الفريق لإضافة الـ DLL الخاص بك إلى التحكم بالإصدار Team Foundation. لمزيد من المعلومات، راجع كيفية: إضافة مشروع أو حل إلى الإصدار التحكم.
تسجيل المهمة
بعد إنشاء المهمة الخاصة بك يجب أن تقوم بتسجيلها من خلال تعيين المهمة الخاصة بك في العنصر UsingTask في الملف TFSBuild.proj. العنصرUsingTask يعين المهمة إلي التجميع الذي يحتوي على تطبيق المهمة. لمزيد من المعلومات، راجع عنصر UsingTask (MSBuild).
لتسجيل المهمة عن طريق تعديل الملف TFSBuild.proj
ابدأ Visual Studio.
سحب الملف TFSBuild.proj الذي تريد تعديله من التحكم بالإصدار Team Foundation وفتحه في Visual Studio محرر الـXML.
أضف العنصر UsingTask إلى الملف TFSBuild.proj مباشرة بعد عبارة الاستيراد.
<UsingTask TaskName="BuildNumberGenerator.BuildNumberGenerator" AssemblyFile="MyTask.dll"/>
لإدراج المهمة الخاصة بك في الهدف BuildNumberOverrideTarget أضاف الـXML التالي داخل العلامات <Target></Target> لنهاية الملف TFSBuild.proj.
</ItemGroup> <Target Name = "BuildNumberOverrideTarget" > <BuildNumberGenerator> <Output TaskParameter="BuildNumber" PropertyName="BuildNumber"/> </BuildNumberGenerator> </Target> </Project>
انقر فوق ملف، انقر فوق حفظ لتحفظ التغييرات التي قمت بها ثم يُغلق TFSBuild.proj.
ملاحظة
سوف تتلقي تحذيرات مخطط الـXML بعد إجراء هذه التغييرات للملف TFSBuild.proj. يمكنك بشكل آمن تجاهل هذه التحذيرات.
تحقق من TFSBuild.proj مرة أخرى في عنصر التحكم بالمصادر.
بعد تعديل الملف TFSBuild.proj وحفظ التغييرات في التحكم بالإصدار Team Foundation ، قم بتشغيل تعريف البناء.
لمزيد من المعلومات، راجع وضع بنية في قائمة الإنتظار.
يمكنك عرض رقم البنية المخصصة في مستكشف البنية. لمزيد من المعلومات، راجع لمراقبة تقدم البناء.