Git Advent Calendar 2019の25日目の記事です。
私はGitを学び始めたばかりなので、初心者目線でGitの魅力を書きました。Gitをよくご存じの方には、初心者に説明する際の参考にしていただけると嬉しいです。
はじめに
この記事は、「Gitってどんなものか全然分からない…」という方に向けて、Gitのメリットをわかりやすく伝えることを目的とした記事です(詳しい機能や使い方には触れていません)。読み終えた後に、**「Gitってなんだかすごい!」**と思っていただくことが目標です。
設定
話を分かりやすくするために、今回は以下の設定で話を進めます。
- 私
- 塾の先生
- 岡畑くん
- ポケモンゲームが大好きな小6男子。最近は”ルビー・サファイア”に夢中
- PCは普段全く使わないため、”ファイル”や”ソースコード”という単語はわからない
ストーリー
(1)バージョン管理について
- 私「岡畑くん、ルビー・サファイアをプレイしてて、間違ってレポートを書いた(= セーブした)ことある?」
- 岡「うん。この前ふざけてジグザグマにマスターボールを使ったら、そのままうっかりレポートして、マスターボールを無駄にしちゃった(笑)」
- 私「もしそこでGitを使ってたら、マスターボールを使った時よりも前に書いたレポートに戻ることができるんだ!」
- 岡「そうなん?!めっちゃすごい!マスターボールで遊び放題じゃん(笑)」
”ポイント1:Gitを使えば、好きなレポートを書いた(= セーブした)時点に戻れる”
(2)ブランチについて
- 私「岡畑くん、ゲームを最初から始める時に、3匹のポケモンのうちどれを選んだ?」
- 岡「1番カッコいいキモリを選んだよ!」
- 私「他に良いポケモンはいなかった?」
- 岡「ミズゴロウもいいなって思ったよ」
- 私「Gitを使えば、キモリとミズゴロウを両方とも使ってゲームを楽しめるよ!」
- 岡「えー、ほんと?」
- 私「”ブランチ”って機能を使ったら、2つ以上のストーリーを同時に進めることができるんだ。まず、キモリを選んでゲームを進めてセーブする。次に、ミズゴロウを選んでゲームを進めてセーブする。そうすると、”キモリ編”と”ミズゴロウ編”という2つのストーリーができて、どちらも使えるんだ」
- 岡「おー、すごい!一石二鳥だね。」
- 私「他にも例えば、イーブイを”シャワーズ”・”サンダース”・”ブースター”のどれに進化させようか迷ったときに、3パターンとも試して1番良いものを使うこともできるんだよ!!」
- 岡「それってめっちゃすごいじゃん!」
”ポイント2:ブランチの機能を使えば、いろんなストーリーが楽しめる”
(3)GitHub
- 私「岡畑くんが一番お気に入りのポケモンって何?」
- 岡「グラードン!!」
- 私「じゃあ、次のテストで90点以上とれたら、GitHubを使って、岡畑くんのグラードンを先生のゲームにコピーして、強くしてから返してあげるよ!」
- 岡「おー!先生ありがとう!がんばるよ!」
”ポイント3:GitHubを使うと、友達と一緒に同じポケモンを育てられる”
まとめ
- Gitを使うと、
- 過去のレポートを書いた(= セーブした)時点に戻れる
- ブランチ機能でいろんなストーリーが楽しめる
- GitHubを使うと、
- 友達と同じデータを共有して強くできる