8章Gitによるソースコード管理
本書では、読者のスキルセットの中に新たにネットワーク自動化を加えるべく、「4章 ネットワークとPython」ではスクリプト言語としてPythonを紹介し、「6章 ネットワーク設定のテンプレート」ではテンプレート言語としてJinjaについて解説してきました。PythonプログラムやJinjaテンプレートなどの利用が増えてくると、これらの作成物(スクリプトやテンプレート、その他の自動化ツールなど)の管理が大きな課題になってきます。特に、これら作成物の変更履歴を管理することには非常に大きな価値があります。理由について後ほど解説します。
この章ではソースコード管理ツールについて紹介します。ソースコード管理ツールを使うことで、ネットワーク自動化の開発プロセスで利用する作成物を管理します。具体的にはソースコード管理ツールを使うことで、従来のようなファイル名の末尾に日時を追加するといった面倒で間違いやすい手作業が必要なくなり、さらにはファイルを誤って削除や上書きをしてしまうといったミスもなくすことができます。
まずはソースコード管理という概念について紹介します。ソースコード管理の一般的な概念を明らかにした上で、具体的な例としてGitと呼ばれるソースコード管理ツールを取り上げます。
8.1 ソースコード管理のユースケース
ソースコード管理とは、簡単に言うとファイルの変更履歴を管理するための仕組みです。バージョン管理あるいはリビジョン管理とも呼ばれます。具体的なユースケースとしては以下のようなものが考えられます。
- ソフトウェア開発プロジェクトに所属する開発者は、作成したプログラムをソースコード管理ツールを使うことで管理でき、変更履歴を追跡することができます。これが最も一般的なユースケースであり、ソースコード管理と聞けば多くの人々はこのような状況を思い浮かべるのではないでしょうか。 ...
Get ネットワーク自動化とプログラマビリティ ―次世代ネットワークエンジニアのためのスキルセット now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.