blade build
v2.0 release
██████╗ ██╗ █████╗ ██████╗ ███████╗
██╔══██╗██║ ██╔══██╗██╔══██╗██╔════╝
██████╔╝██║ ███████║██║ ██║█████╗
██╔══██╗██║ ██╔══██║██║ ██║██╔══╝
██████╔╝███████╗██║ ██║██████╔╝███████╗
╚═════╝ ╚══════╝╚═╝ ╚═╝╚═════╝ ╚══════╝
英語 | 簡體中文
一個易於使用、快速且現代化的建置系統,用於大規模 monorepo 程式碼庫中基於主幹的開發。
首先,讓我們來看一個很酷的演示:
master分支上的程式碼是開發版本,應該被視為alpha版本。請優先在正式環境中使用標籤上的版本。我們會不定期向標籤發布大規模內部程式碼庫上經過驗證的版本。
2.0 版本已進入候選版本!它包括以下顯著變化:
請依照升級注意事項進行升級。
Blade 被設計為一個現代建造系統。它功能強大且易於使用。它支援建構多種語言,如c/c++、java、python、scala、protobuf等。 。它旨在提高專案建構規則的清晰度和簡單性。
使用 Blade,您只需輸入簡單的命令列即可編譯、連結和測試多個目標。例如:
遞歸地建構和測試公共目錄中的所有目標。
blade test common...
建置並測試 32 位元目標
blade test -m32 common...
以調試模式建置和測試目標
blade test -pdebug common...
您可以將這些標誌組合在一起:
blade test -m32 -pdebug common...
Blade 的靈感來自 Google 關於其構建系統的公開資訊。這裡有一篇來自Google官方部落格的參考文章:build in cloud: how build system work。
2015 年晚些時候,他們發布了它並部分重寫為bazel
開源建置系統。
Blade內部產生Ninja腳本,所以當然依賴ninja。
Python是一門功能強大且易於使用的語言,我們喜歡Python。
一些Google開源的函式庫,像是protobuf,
測試,
gperftools 方便且功能強大,我們整合了這些函式庫。