تحديث معلومات الإصدار مع MSBuild (بعد مجموعة الثنائيات)
-
21-09-2019 - |
سؤال
أريد أن أحقق هدفًا في نص MSBuild الخاص بي:
- جلب SVN مراجعة/DateTime من مجلد المصادر (أمر "svn info")
- تحديث VersionInfo Resource من .exes و .dlls التي تم إنشاؤها بواسطة هدف "بناء"
هناك شيء جاهز لإنجاز هذا؟ أنا أسأل قبل إعادة اختراع عجلة أخرى ...
أنا ألقي نظرة على http://msbuildextensionpack.codeplex.com
المحلول
مشروع مجتمع MSBUILD هو صديقك. تحقق من مهمة "svninfo".
أيضا ، دانييل دوبروفكين ResourceLib هو عمل ممتاز ويمكنك تجنب الكثير من الصداع عند محاولة فك تشابك فوضى إنشاء الإصدار (كانت هناك ، القيام بذلك ...)
نصائح أخرى
أسهل بكثير للقيام بذلك قبل التجميع عن طريق كتابة ملف AssemblyInfo (أو أي ملف به سمات تجميع) تم تضمينه في مشاريعك.
مثال على كتابة هذا في PowerShell الموجود هنا: https://github.com/craigbeck/rhino-esb/blob/master/psake_ext.ps1#l7-46
تحذير واحد - الإصدارات في .NET ليست مجرد سلسلة ولكن ushort
S مما يعني أن لديهم كحد أقصى 65535 (انظر المستندات هنا). إذا كنت تستخدم مراجعة SVN (كما فعلنا عند نقطة واحدة) ، فسوف ينهار بنيتك بمجرد تجاوز هذا الرقم السحري.
لماذا تحاول القيام بذلك بعد التجميع؟