ตัวฉันและกลุ่มของฉันรู้สึกแย่กับการเพิ่มหมายเลขเวอร์ชันการประกอบและเราจัดส่งชุดประกอบที่มีเวอร์ชัน 1.0.0.0 อยู่บ่อยครั้ง เห็นได้ชัดว่าสิ่งนี้ทำให้ปวดหัวมาก
เราเริ่มดีขึ้นมากกับแนวทางปฏิบัติของเราผ่านแพลตฟอร์มCIของเราและฉันต้องการตั้งค่าให้เพิ่มค่าภายในassemblyinfo.cs
ไฟล์โดยอัตโนมัติเพื่อให้เวอร์ชันของแอสเซมบลีของเราได้รับการอัปเดตโดยอัตโนมัติเมื่อมีการเปลี่ยนแปลงโค้ดในแอสเซมบลีนั้น
ก่อนหน้านี้ฉันได้ตั้งค่า (ก่อนที่เราจะพบฮัดสัน ) วิธีเพิ่มค่าผ่านmsbuild
บรรทัดคำสั่งอย่างใดอย่างหนึ่ง(จำไม่ได้) แต่ด้วยฮัดสันที่จะอัปเดตที่เก็บ SVN และทริกเกอร์บิวด์ ANOTHER นั่นจะส่งผลให้เกิดการวนซ้ำแบบไม่สิ้นสุดอย่างช้าๆขณะที่ฮัดสันสำรวจ SVN ทุกชั่วโมง
การเพิ่มหมายเลขเวอร์ชันของฮัดสันเป็นความคิดที่ไม่ดีหรือไม่? จะมีทางเลือกอื่นให้ทำอย่างไร?
ตามหลักการแล้วเกณฑ์ของฉันสำหรับการแก้ปัญหาคือ:
- เพิ่มหมายเลขบิวด์
assemblyinfo.cs
ก่อนสร้าง - เพิ่มเฉพาะหมายเลขบิลด์ในแอสเซมบลีที่มีการเปลี่ยนแปลง สิ่งนี้อาจเป็นไปไม่ได้เนื่องจากฮัดสันจะล้างโฟลเดอร์โครงการทุกครั้งที่สร้าง
- ยอมรับ assemblyinfo.cs ที่เปลี่ยนแปลงลงในที่เก็บโค้ด (ปัจจุบันคือVisualSVN )
- ไม่ทำให้ฮัดสันทริกเกอร์บิวด์ใหม่ในครั้งถัดไปที่สแกนหาการเปลี่ยนแปลง
เมื่อพิจารณาถึงสิ่งนี้ในหัวของฉันฉันสามารถหาวิธีแก้ปัญหาส่วนใหญ่ได้อย่างง่ายดายผ่านไฟล์แบตช์ / คำสั่ง แต่ความคิดทั้งหมดของฉันจะทำให้ฮัดสันเรียกใช้งานสร้างใหม่ในครั้งต่อไปที่สแกน ฉันไม่ได้มองหาใครสักคนที่จะทำทุกอย่างเพื่อฉันเพียงแค่ชี้ทางที่ถูกต้องให้ฉันอาจเป็นเทคนิคที่จะทำให้ฮัดสันเพิกเฉยต่อการกระทำบางอย่างของ SVN เป็นต้น
ทุกสิ่งที่ฉันพบจนถึงตอนนี้เป็นเพียงบทความที่อธิบายถึงวิธีการเพิ่มหมายเลขเวอร์ชันโดยอัตโนมัติโดยไม่ต้องคำนึงถึงแพลตฟอร์ม CI ที่สามารถหมุนวนเป็นวงวนไม่สิ้นสุด