この記事は私の所属しているプロジェクト団体の初学者向けに書いた文章です。
Hello!
こんにちは!普段は真面目な私ですが、今回はみなさんにGitを楽しく学んでいただきたいと思い、カジュアルな 感じで記事を書きました。
はじめに
この記事では、「Git」について聞いたことはあるけれど、詳しく知らない方向けに説明します。主に以下の3点についてお話しします:
- なぜエンジニアはGitを使うのか
- Gitを使うとどんなメリットがあるのか
- バージョン管理の恩恵
- GitとGitHubの違い
なぜエンジニアはGitを使うのか
エンジニアがGitを使う主な理由は、バージョン管理ツールとして優れているからです。
ん?バージョン管理?
バージョン管理って何でしょうか?
プログラムコードは流動的
プログラムは常に変化しています。昨日書いたコードが、今日は全く違うものになっていることもあります。そんなとき、「あの時の状態に戻りたい...」と思うことがよくあります。
例えば、こんな状況を想像してみてください
あなた:新機能を追加しよう!(プログラムを100行書く。それも複数のファイルで)
コード:エラーだらけで動かない
あなた:ぎゃああ゛ー!昨日の状態に戻したい!
バージョン管理ソフトを使っていないと、この「昨日の状態」に戻るのが難しいんです。でも、Gitのようなバージョン管理ソフトを使えば、簡単に過去の状態に戻れるんです!
用語:バージョン管理
ファイルの変更履歴や変更内容などを記録し、管理すること。
ファイルを編集している間、ずっとメモを取ってくれている秘書みたいなものです。
バージョン管理の恩恵
実際にソフトウェア開発の現場を想定してどのようなときにバージョン管理
の恩恵を受けられるのか考えてみましょう。
なぜバージョン管理
が必要なの?
実際の開発現場で、バージョン管理はどんな場面で役立つのでしょうか?
-
変更履歴の確認
「先週の金曜日に追加した機能、どんなだったっけ?」と思ったとき、簡単に確認できます。 -
失敗してもやり直せる
新機能を追加してバグだらけになっても、すぐに前の正常な状態に戻せます。 -
複数人での作業が楽になる
AさんとBさんが同じファイルを編集しても、変更を簡単に統合できます。 -
実験的な機能を安全に試せる
「ブランチ」という機能を使えば、メインのコードを壊さずに新しいアイデアを試せます。
用語:ブランチ
メインの開発ラインから分岐した、独立した開発ラインのこと。
実験的な機能を安全に開発できます。
GitHubとGitの違いはなんやねん!
ここで Git
についておさらいしておきます
Git
はバージョン管理ソフトの一つで、変更履歴を管理するツールです。
GitHub
はそのGit
を使うためのウェブサービスです。Gitで管理しているプロジェクトをネット上においてほかの人と一緒に共有できるようにするサービス。つまり、バージョン管理をみんなで見られるようにした掲示板サイトみたいなものです。
主な違い
-
Git
はツールでGitHub
はインターネット上のサービスでブラウザから使います。 -
Git
は個人で利用して一人で黙々とコードを書いていても便利で、GitHub
は他の人とコードを共有したり、一緒に開発したりするときに便利 -
Git
は無料。GitHub
は一部有料(学生なら無料になることもある)
GitとGitHubは、セットで使うと最強です。Gitでコードを管理して、GitHubで世界中の開発者と共有する。そうやって、みんなで協力して素晴らしいものを作っていくんです。
さいごに
Git
を使うと、複数人でのプロジェクト開発がスムーズになります。初めての方にとっては勉強するのが難しいと思うかもしれません。
学習コストは確かに大きいですが、少しずつ勉強してマスターしていきましょう!
次の記事では
- Gitの基本コマンドを勉強
を行います。乞うご期待👍