バージョン管理ツール|科目A-1(応用情報技術者) 令和6年 秋期午前試験 問19

出典:令和6年秋期 午前 問19 分野:ソフトウェア / 開発ツール
分散開発環境において,各開発者のローカル環境に全履歴を含んだ中央リポジトリの完全な複製をもつことによって,中央リポジトリにアクセスできないときでも履歴の調査や変更の記録を可能にする,バージョン管理ツールはどれか。
  • ア:Apache Subversion
  • イ:CVS
  • ウ:Git
  • エ:RCS
応用情報技術者
解説

Gitは、各開発者のローカル環境にリポジトリの履歴を含む完全な複製を保持する分散型バージョン管理システムです。

そのため、中央リポジトリに接続できない状態でも、過去の変更履歴の確認やコミットによる変更の記録などを行えます。後から中央リポジトリへ接続したときに、変更内容を送受信できます。

したがって、が適切です。

❌他選択肢が誤りの理由
ア:Apache Subversion
⇒Apache Subversion(SVN)は、中央リポジトリを中心としてバージョンを管理する集中型バージョン管理システムです。各開発者が全履歴を含む完全なリポジトリを保持する方式ではありません。
イ:CVS
⇒CVSも、中央のリポジトリにソースコードや履歴を保存する集中型バージョン管理システムです。Gitのような分散型ではありません。
エ:RCS
⇒RCSは、主に個々のファイル単位で変更履歴を管理する古典的なバージョン管理システムです。分散開発で各開発者が中央リポジトリの完全な複製をもつ仕組みではありません。
TSUNAGARU-ADVICE

まず押さえたいこと

Gitは分散型バージョン管理システムで、各開発者のローカル環境にリポジトリの完全な複製を保持できます。そのため、中央リポジトリに接続できない状況でも、履歴の確認やコミットによる変更記録が可能です。

迷ったときの判断軸

「各開発者が全履歴を含む完全なリポジトリをもつ」という表現が分散型の決め手です。SubversionやCVSは中央のリポジトリを中心に管理する集中型であり、Gitとは管理方式が異なります。

科目Bにつなげるために

特にプロフェッショナルデジタルスキル(システム)試験合格を目指す方は、Gitを分散型バージョン管理として押さえ、clone・commit・push・pull・branch・mergeといった基本操作の役割も整理しておきましょう。