[英]Version Control / Configuration Management for Linux Images
我正在進行的一個項目涉及持續維護一個基本的 Linux 磁盤映像,該磁盤映像被克隆到嵌入式設備上。
現在,每次進行更改時,我們都會將我們所做的事情記錄在一個文件中,並保存一份磁盤映像的副本。 然而,作為一名軟件工程師,這與傳統做法背道而馳:使用工具來處理配置管理和控制。
是否有好的工具可以基本上在文件級別執行此操作,允許我們提交/回滾對整個系統磁盤上實際文件的更改? 或者,有什么東西可以比傳統的源代碼管理工具更好地處理大文件,而傳統的源代碼管理工具並不是專門為巨型二進制文件設計的?
在我發表評論五年后,我有了一個更好的解決方案。 Artifactory 和 Nexus 旨在作為 CI/CD 代碼管道的一部分來完成這項工作。
In my case, I use Jenkins, Artifactory, GitHub, CircleCI, and for legacy reasons Perforce, to manage a code tree of 70k+ files ( code tree not my design.) for a C++ and Javascript build.
FOSS Artifactory 非常有限,您可以使用版本控制存儲任意文件,但您不能使用讓您控制 Pipeline 的步進機制,因為它將工件從構建移動到測試...部署。
Artifactory Pro 不是免費的,但它有許多標准包的存儲庫,例如 Docker 容器、Debian、NPM、Gems 等。
我也有完全一樣的問題。 目前我的版本庫在 git 中超過 150G,從 CVS 移動。 CVS 完美地處理了小文件,但對多 G 文件猶豫不決。 所以。 萬一其他人路過,這里有一些我正在尋找的可能的解決方案:
http://git-annex.branchable.com/
https://github.com/jedbrown/git-fat
https://github.com/schacon/git-media
http://code.google.com/p/boar/
如果它可以處理 8G 文件,也可能是 Subversion。
配置管理應該以進行修改的首選形式進行。 對於磁盤映像,這意味着實際文件,以及用於構建映像的構建腳本。 這背后的原因與您首先保留歷史記錄的原因有關:
由於可以提取磁盤映像,因此如果僅跟蹤二進制文件,您並不會完全陷入困境,但是通過跟蹤源,這些操作會容易得多。
我們最終將關鍵文件放在源代碼控制中,而不是整個系統。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.