多数の人が使用する多数の異なるサービスを備えた多数のサーバーを管理することを想像してみてください。ここで、それらのサーバーの 1 つで、一部のソフトウェアを再構成または交換したいとします。明らかに、運用中のサーバーで作業したくないでしょう。
これがコードの変更である場合、開発者として、ローカルの開発マシンで変更を行い、ローカルでテストして、変更をバージョン管理システムにコミットします。その後、変更をステージング環境にデプロイし、さらにテストして、最終的に本番環境にデプロイできます。必要に応じてロールバックすることも簡単です。
一般的に、または具体的に、システム管理でこれをどのように達成しますか?
(最初に頭に浮かぶのは、仮想マシンを使用して仮想マシン イメージをバージョン管理することですが、私が現在認識していない文献や巧妙なソリューションがたくさんあると確信しています。)