أهداف بنيات Team Foundationالقابلة للتخصيص
MSBuildالأهداف تُعرِف كيفيةMSBuild بناء المشروع. ملف Microsoft.TeamFoundation.Build.targets يعرّف التسلسل الهرمي الخاص بالهدف ومجموعة من الأهداف والمهام المعرفة مسبقاً MSBuild بنية Team Foundation والمستخدمة لكافة بنية Team Foundation الأنواع. Build definitions include a project ملف that هو named TfsBuild.proj. يمكن أن يكون ملف مشروع المرتبطة بواحد فقط تعريف البناء، أو بواسطة تعريف البناء s متعددة. يستورد TfsBuild.proj ملف Microsoft.TeamFoundation.Build.targets كما يوفر قيم لخصائص متعددة لمجموعات من العناصر المختلفة. يمكنك تخصيص الملف TfsBuild.proj لمنع بعض أهداف نقطة الإمتداد في التسلسل الهرمي. يتم وضع ملف الأهداف في < الجذر >: \Program Files\MSBuild\Microsoft\VisualStudio\TeamBuild على عميل البناء.
هام
لا تقم بتعديل الملف Microsoft.TeamFoundation.Build.targets
لمزيد من المعلومات حول هذه الأهداف MSBuild راجع الأهداف MSBuild.
الأهداف التي يمكن تخصيصها مع المهام
يتم تضمين المهام في الأهداف. توفر "المهام" تعليمات برمجية يتم تشغيلها أثناء عملية البناء. يسرد الجدول التالي كافة بنية Team Foundation الأهداف التي تم تعريفها القابلة للتوسعة. إدراج المهام في أحد هذه الأهداف استناداً إلى متى يجب تشغيل المهام المخصصة أثناء عملية البناء.
ملاحظة
لا ننصح بمنع أهداف أخرى.
إسم الهدف |
الوصف |
---|---|
BeforeEndToEndIteration |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة في بداية عملية البناء. |
AfterEndToEndIteration |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة في بداية عملية البناء. |
BeforeInitializeWorkspace |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل المهام المخصصة قبل تهيئة مساحة العمل. |
AfterInitializeWorkspace |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل المهام المخصصة قبل تهيئة مساحة العمل. |
BuildNumberOverrideTarget |
إدراج المهمة الخاصة بك في هذا الهدف لتخصيص رقم البنية أو إفلات خصائص الموقع. المهمة التي عليك كتابتها يجب أن تنشئ خاصية إخراج تسمى BuildNumber. |
BeforeClean |
استدعاء قبل محاولة الإزاله إدراج المهمة الخاصة بك لهذا الهدف لتشغيل مهمة سبق إزالتها. |
AfterClean |
إستدعاء بعد إستكمال التنظيف. إدراج المهمة الخاصة بك لهذا الهدف لتشغيل مهمات سوف يتم إزالتها. |
BeforeGet |
استدعاء قبل استرداد المصادر من التحكم بالمصادر. إدراج المهمة الخاصة بك في هذا الهدف لتشغيل المهام المخصصة قبل استرداد المصادر. |
AfterGet |
تستدعي بعد استرداد المصادر. إدراج المهمة الخاصة بك في هذا الهدف لتشغيل المهام المخصصة بعد استرداد المصادر. |
BeforeLabel |
استدعاء قبل تسمية المصادر. إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة قبل Label الهدف. |
AfterLabel |
تستدعي بعد ُإستكمال وضع التسمية. إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة بعد Label الهدف. |
BeforeCompile |
استدعاء قبل بدء تشغيل التحويل البرمجي. إدراج المهمة الخاصة بك في هذا الهدف لتشغيل المهام قبل أن يتم تحويل ملفات التعليمات البرمجية. |
BeforeCompileConfiguration |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة قبل التحويل البرمجي لتكوين فردي. |
BeforeCompileSolution |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة قبل التحويل البرمجي لحل فردي. |
AfterCompileSolution |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة بعد التحويل البرمجي لحل فردي. |
AfterCompileConfiguration |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة بعد التحويل البرمجي لتكوين فردي. |
AfterCompile |
تستدعي بعد إستكمال التحويل البرمجي. إدراج المهمة الخاصة بك في هذا الهدف لتشغيل المهام المخصصة بعد أن يتم تحويل ملفات التعليمات البرمجية. |
BeforeGetChangesetsAndUpdateWorkItems |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة قبل اقتران مجموعة التغييرات وتحديث عناصر العمل. |
AfterGetChangesetsAndUpdateWorkItems |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة بعد اقتران مجموعة التغييرات وتحديث عناصر العمل. |
BeforeTest |
تستدعي قبل تشغيل الاختبارات. إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة قبل Test الهدف. |
BeforeTestConfiguration |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة قبل الإختبار لتكوين فردي. |
AfterTestConfiguration |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة بعد الإختبار لتكوين فردي. |
AfterTest |
تستدعي بعد إكمال اختبار. إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة بعد Test الهدف. |
BeforeDropBuild |
تستدعي قبل حفظ الثنائيات المبنية، ملفات السجل المبنية واختبار النتائج إلى دليل إفت البناء على خادم الطرح. إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصص قبل أن يتم حفظ الملفات المبنية إلي دليل الإفلات. |
AfterDropBuild |
تستدعي بعد إفلات الثنائيات المبنية ،بناء ملفات السجل وإختبار النتائج إلى خادم الطرح. إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصص بعد أن يتم حفظ الملفات المبنية إلي دليل الإفلات. |
BeforeCreateWorkItem |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل المهام المخصصة قبل إنشاء عنصر العمل. |
AfterCreateWorkItem |
إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة بعد إنشاء عنصر العمل. |
BeforeOnBuildBreak |
تستدعي قبل إنشاء عنصر عمل كنتيجة لفصل البنية. إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة قبل BuildBreak الهدف. |
AfterOnBuildBreak |
تستدعي بعد إنشاء عنصر عمل كنتيجة لفصل البنية. إدراج المهمة الخاصة بك في هذا الهدف لتشغيل مهام مخصصة بعد BuildBreak الهدف. |
GenerateDocumentation |
هذا هدف فارغ. إدراج الخاص بك في هذا الهدف لإنشاء وثائق أثناء عملية البناء تلقائياً. |
تجاوز الأهداف لتشغيل مهام مخصصة
يجب أن يتم ازدواج التعليمات البرمجية المكتوبة مع هدف. لمزيد من المعلومات، راجع مهمة الكتابة. لكتابة مهمة مخصصة يجب اتباع الخطوات التالية.
أكتب التعليمات البرمجية الخاصة بالمهمة ثم تأكد من توافر الثنائيات المبمية على بنية الكمبيوتر، إما عن طريق توفير مسار عنصر تحكم بالتعليمات البرمجية المصدر في ملف TfsBuild.proj أو عن طريق إجراء الثنائيات المتوفرة على بنية الكمبيوتر نفسه.
ملاحظة
إنه من الأفضل في كتابة التعليمات البرمجية إيداع لبتعليمات البرمجية الخاصة بالمهمة في عنصر التحكم بالمصادر لكنها غير ضرورية حتماً.
قم بتسجيل المهمة المخصصة في ملف TfsBuild.proj بواسطة التصريح باستخدام العنصر UsingTask MSBuild.
لمزيد من المعلومات، راجع عنصر UsingTask (MSBuild).
<UsingTask TaskName="MyTasks.SimpleTask" AssemblyName="MyAssembly.Build.Tasks"/>
قم بتشغيل المهمة بواسطة إدراج الهدف المطلوبة في الملف TfsBuild.proj.
<Target Name="BeforeGet"> <SimpleTask /> </Target>
ملاحظة
إضافة هذه العلامة يؤدي إلي تحذير في مخطط XML. يمكنك بشكل آمن تجاهل هذه التحذيرات.
أنشر ملف DLL الذي يحتوي على المهمة المخصصة على بنية الكمبيوتر.
هام
كل تعريف للبنية مقترن بالملف TfsBuild.proj والذي قمت بتخصيصه سوف يتأثر بالتغيير.
ترتيب تنفيذ الهدف
يعتمد ترتيب تنفيذ الأهداف على قيمة الخاصية CleanCompilationOutputOnly. إذا كانCleanCompilationOutputOnly true ، تظهر الأهداف النظيفة ( BeforeClean ، CoreClean و AfterClean) يتم تنفيذها بعد أهداف الحصل والتسمية ( BeforeGet ، CoreGet ، AfterGet ، BeforeLabel ، CoreLabel ، و AfterLabel). إذا كانت الخاصيةCleanCompilationOutputOnly false ، تنفذ الأهداف النظيفة قبل أهداف الحصول والتسمية . إذا كانCleanCompilationOutputOnly true ، يتم حذف التجميعات المتوسطة من دليل المصادر أثناء CoreClean تنفيذ الهدف. إذا تم تعيين هذه الخاصية إلى false, سيتم حذف كل دليل المصادر أثناء CoreClean تنفيذ الهدف.
يعرض الجدول التالي القائمة المرتبة للأهداف والتي يتم تنفيذها استناداً إلى إذا كان CleanCompilationOutputOnly true أو false. الأهداف التي يمكنك تجاوزها يتم عرضها بنص غامق.
CleanCompilationOutputOnly = true |
CleanCompilationOutputOnly = false |
---|---|
|
|
التالية هي قائمة الأهداف التي يتم تنفيذها عند حدوث خطأ أثناء تنفيذ CoreCompile الهدف. الأهداف التي يمكنك تجاوزها يتم عرضها بنص غامق.
SetBuildBreakProperties
BeforeOnBuildBreak
GetChangesetsOnBuildBreak
BeforeDropBuild
CoreDropBuild
AfterDropBuild
BeforeCreateWorkItem
CoreCreateWorkItem
AfterCreateWorkItem
CoreOnBuildBreak
AfterOnBuildBreak