在密集開發階段,可能數日一更,甚至於一日數更。若是牽涉到多位開發者與測試者,常會有以下的困擾:
Tester: 請問前幾天提到的那個很緊急的 Bug 修好了嗎?
Developer: 早就改好了,應該已經上版了。
Tester: 可是我試起來怎麼還是有問題?
Developer: 嗯,你是用正式機嗎?我們只會部署到測試機哦,可能要等客戶的 SE 他們才有權限。
Tester: 那我要怎麼確認是「已經修改的版本」呀?
這樣常見的場景,其實可歸納為兩個主要問題:
經過以上的步驟,應該就能順利編譯我們的組件,並且總是有自動跳號的版本。
接著第二個問題,當組件被使用時,「人」可以怎麼很容易地區分「喔,這個組件更版了」,或是「上週的網站已經更新」呢?這裡舉 Web API 的開發為例,通常我們會準備 Swagger 頁面給使用者測試,並且用來做為溝通的介面。所以翻開 Swagger 的其中一個定義:
builder.Services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Version = Assembly.GetExecutingAssembly().GetName().Version?.ToString(), Title = "..." }); });
就可以在 Swagger 頁面上,輕鬆呈現組件版本。