- 追加された行はこの色です。
- 削除された行はこの色です。
[[Program]] #contents * SCMとは? [#l2d10e38] [[ソフトウェア構成管理 - Wikipedia>http://ja.wikipedia.org/wiki/%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E6%A7%8B%E6%88%90%E7%AE%A1%E7%90%86]] >ソフトウェア構成管理(Software Configuration Management、SCM)とはソフトウェア開発プロジェクトをその成果物を通して制御・管理する方法論である。 ソースコードや文書などの成果物の変更履歴を管理し、製品のバージョンやリビジョンに個々の成果物のどのバージョンが対応しているかを識別し、任意のバージョンの製品を再現可能とする。 バージョン管理システムは SCM のためのツールであるが、バージョン管理システムそのものを SCM と呼ぶこともある。 * バージョン管理システム [#bc11ee45] [[バージョン管理システム - Wikipedia>http://ja.wikipedia.org/wiki/%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E7%AE%A1%E7%90%86%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0]] >バージョン管理システムとは、コンピュータ上で作成、編集されるファイルの変更履歴を管理するためのシステム。 特にソフトウェア開発においてソースコードの管理に用いられることが多い。 ** 主なバージョン管理システム [#g9bee446] フリーソフトウェア(無料・オープンソース) - GNU arch - 分散型。C言語、シェルスクリプトで実装されている。 - Bazaar - 分散 or 集中型。Pythonで実装されている。 - CVS - 集中型。C言語で実装されている。 - Darcs - 分散型。Haskellで実装されている。 - Git - 分散型。Linuxのコード管理のために作られた。C言語、シェルスクリプト、Perlなどで実装されている。 - [[Git]] - 分散型。Linuxのコード管理のために作られた。C言語、シェルスクリプト、Perlなどで実装されている。 - Mercurial - 分散型。Python、C言語で実装されている。 - Monotone - 分散型。C++で実装されている。 - Subversion - 集中型。CVSの改良版という位置づけ。C言語で実装されている。