我目前正致力於自動化/改進包裝我店的整個產品的發佈過程。目前該產品的組合:版本信息的最佳實踐?
- Java服務器端代碼庫
- XML配置和應用程序文件
- 殼牌和批處理腳本爲管理員
- 靜態地提供HTML頁面
- 和一些其他的東西,但大部分是這樣的
所有或大部分都有其中包含各種版本信息,我們編輯出於各種目的。發佈打包過程的一部分涉及到很多發現,grep'ing和sed'ing(用腳本)來更新信息。這種包裝產品的粘合劑似乎已經以有機的,即時的方式拼湊在一起,並且保持非常可怕。例如,一些Java方法在發佈時創建Date對象,其參數通過文本替換進行更新,而無需編譯器驗證......只是,urgh。
我試圖避免給出使用實際軟件(即CVS,SVN,螞蟻等)的例子,因爲我想避免「使用xyz的功能來做到這一點」,並更多地關注一般實踐。我想爲這個問題指責劣質設計,但如果我必須重新開始,仍然使用不同的技術,我不確定如何最好地處理這個問題,而不是放下約定。
我的問題是,是否有任何最佳實踐或提示和技巧來維護和更新跨不同技術,文件類型,平臺和版本控制系統的版本信息?