構成管理(Git等)とは?GitとGitHubの違い、分散型

公開: 更新: カテゴリ: マネジメント系

30秒で結論

構成管理(Git等)とは(全体像)

構成管理とは、システムを作る部品——ソースコード・文書・使っている部品(ライブラリ)などの、「いつ・だれが・どこを変えたか(変更履歴)」と「今どの版か(バージョン)」を管理する活動のこと。

これがあると、前の状態に戻したり(ロールバック)、複数人が同時に作業したりしやすくなる。「いつのまにか壊れて、もとに戻せない」を防げる。

その代表ツールがGit。そして、Gitで管理したものをネット上に置いて、みんなで共有・共同作業する場が、GitHubなどのサービスだ。


詳しく:GitとGitHubの違い、分散型

ここが心臓部。まず、よく混同する2つを区別しよう。

GitとGitHubの違い

名前何か
Gitバージョン管理を行う「ツール(本体)」
GitHubGitで管理したものを置いて共有する「場(サービス)」

Gitは、手元で変更履歴を管理するツール(しくみ)そのもの。一方、GitHubは、Gitの内容をネット上に置いて、みんなで共有したり共同作業したりする場所(ホスティングサービス)。「Git=GitHub」と書くと誤りになる。

そしてもう1つ大事なのが、Gitは「分散型」だということ。分散型とは、各自の手元にも、変更履歴のコピーがまるごとあるやり方。中央の1か所だけにしか履歴がない「集中型」とは違う。分散型なので、ネットにつながっていなくても作業しやすく、1か所が止まっても困りにくい

わかりやすく言い換えると

身近なたとえで整理しよう。

構成管理は、「文書のセーブと履歴をきちんと残す」イメージ。前の版にすぐ戻せて、だれがどこを直したか分かる。要するに、変更の記録をしっかり残すしくみだ。

GitとGitHubの違いは、「ノート(Git)」と「ノートを置いて共有する本棚(GitHub)」の関係に近い。つまり、Gitは記録するツール、GitHubはそれを共有する場、ということ。

分散型は、「全員が自分の手元にも、まるごとコピーを持っている」こと。つまり、中央の1か所だけに頼らないやり方だ。


試験のツボ

🔴 一番出る:構成管理とGit

①ソースコードなどのバージョンと変更履歴を管理する活動

②代表ツールがGit(前の状態に戻す・並行作業がしやすい)

🔴 次に出る:GitとGitHubの違い

①Gitは、バージョン管理を行うツール(本体)

②GitHubは、Gitの内容を置いて共有する場(サービス)

🟡 押さえると安定:Gitは分散型

①各自の手元にも、変更履歴のコピーがまるごとある

②中央1か所だけの「集中型」とは違う


よくある間違い

「GitとGitHubは、まったく同じものだ」→ ✗  Gitはバージョン管理のツール、GitHubはそれを共有する場(サービス)。別のもの。

「Gitは、中央の1か所だけに履歴がある集中型だ」→ ✗  Gitは分散型で、各自の手元にも履歴のコピーがある。

「構成管理とは、社員の給与を計算するためのしくみだ」→ ✗  構成管理は、コードなどのバージョンと変更履歴を管理する活動。


試験での出題パターン

実際の問題でたしかめてみよう。

オリジナル問題1(構成管理の正体)

📝 オリジナル問題 1 構成管理の正体

構成管理に関する次の記述のうち、最も適切なものはどれか。

  1. 社員の出退勤の時刻を記録して、毎月の給与を計算するためのしくみである
  2. 取引先へ毎月の請求書を郵送する、決まった事務作業のことを指している
  3. 完成したシステムを宣伝して、より多く売るための広告活動のことである
  4. ソースコードなどのバージョンと変更履歴を管理していく活動のことである
プロネコ
プロネコ 解答・解説

解答は 4 だよ。

構成管理は、ソースコードなどのバージョンと変更履歴を管理する活動だよ。前の状態に戻したり、並行作業をしやすくするんだ。

選択肢1は給与計算、選択肢2は請求書の事務、選択肢3は広告で、どれも違うよ。

選択肢判定理由
1給与計算のしくみではない
2請求書の事務の話
3広告活動ではない
4バージョンと変更履歴を管理するで正しい

オリジナル問題2(GitとGitHubの違い)

📝 オリジナル問題 2 GitとGitHubの違い

GitとGitHubの違いに関する次の記述のうち、最も適切なものはどれか。

  1. Gitはバージョン管理のツールで、GitHubはそれを置いて共有する場所である
  2. Gitは共有する場、GitHubはバージョン管理のツールという、逆の説明になっている
  3. GitもGitHubも、社員の給与を計算することだけを目的にした同じものである
  4. GitもGitHubも同じ意味で、呼び名が2つあるだけで違いはないとされている
プロネコ
プロネコ 解答・解説

解答は 1 だよ。

Gitはバージョン管理のツール、GitHubはそれを置いて共有する場だよ。「Git=GitHub」と混同しないでね。

選択肢2は説明が逆、選択肢3は給与計算、選択肢4は「違いはない」が誤りだよ。

選択肢判定理由
1Gitはツール・GitHubは共有の場で正しい
2GitとGitHubの説明が逆
3給与計算のものではない
4両者には違いがある

オリジナル問題3(Gitは分散型)

📝 オリジナル問題 3 Gitの方式

Gitの方式に関する次の記述のうち、最も適切なものはどれか。

  1. Gitは、中央の1か所だけに履歴がある集中型のしくみだとされている
  2. Gitは分散型で、各自の手元にも変更履歴のコピーがまるごとある
  3. Gitは、社員の給与を計算することだけを目的にしたしくみである
  4. Gitは、取引先へ請求書を郵送する事務作業のしくみのことである
プロネコ
プロネコ 解答・解説

解答は 2 だよ。

Gitは分散型で、各自の手元にも変更履歴のコピーがまるごとあるよ。中央1か所だけの集中型とは違うんだ。

選択肢1は「集中型」が誤り、選択肢3の給与計算、選択肢4の請求書の事務は、いずれも誤りだよ。

選択肢判定理由
1Gitは集中型ではなく分散型
2各自に履歴のコピーがある分散型で正しい
3給与計算のしくみではない
4請求書の事務ではない

まとめ

押さえどころ

次に学ぶ


執筆: SikakuQuest編集部

勉強は、クエストになった。

資格の勉強を、冒険に変えるRPG学習アプリ

App Storeで見る