こんにちは、nomuyoguです!
Webエンジニアを目指す上で必須となる知識に、Gitがあります。
求人サイトの「求められるスキル」の欄にも、「Gitを使用したチーム開発の経験」のような項目がしばしば見られます。
とはいえ、独学でWeb開発を学んでいる段階だと、以下のような悩みを抱えている方もいらっしゃるのではないでしょうか。
何が便利なのか分かんない…
操作が難しくて扱うのが怖い…
自分も昔はGitに対する恐怖心がありました。。。
ですが、Gitの仕組みを理解してから恐怖心はなくなり、純粋にありがたさを享受できるようになりました。
本シリーズでは、Gitをあまり使ったことがない初心者の方に向けて、少しでもGitの仕組みを理解し、Gitに対する恐怖心を払拭できるように解説をしていきます!
第1回の今回は、「Gitとは何か」、「Gitを使うことで何のメリットがあるのか」を解説します。
Gitとは
Gitとは、ひとことで言うならば「バージョン管理システム」です。
ファイルの変更履歴を、「コミット」という形で保存しておくことができます。
以下の図は、テキストファイルに文字を追記し、削除する流れを表しています。
Gitを使用することで、”CCC”という行が追加されたことや、”BBB”という行が削除されたことがコミットとして記録されます。
Gitを使うと何がいいの?
ソースコードの安全性・保守性を高める
前章では、Gitはコミットという機能でファイルの変更履歴を記録しておけると説明しました。
このコミットという機能があることで、ファイル内容を過去の特定の時点のファイル状態に戻すことができるようになります。
これにより、リリースしたアプリのソースコードにバグがあった場合にも、正常に動作する過去の状態へスムーズに切り戻すことができるのです。
また、ファイルの変更履歴ががわかるので、どの変更でバグが発生するようになったのかが特定しやすくなります。
このように、Gitを使うことで、アプリケーションの安全性・保守性を高めることができます。
チーム開発を円滑にする
実務でのアプリケーション開発は、基本的にチーム開発となります。
Aさんは機能Aを実装、Bさんは機能Bを実装というように、機能ごとに実装を担当することが多いです。
ここでブランチというGitの仕組みを使うことで、元となるソースコードから自分の作業用のソースコードを分岐させることができます。
分岐したブランチは他のブランチの変更の影響を受けないので、他者の変更に影響されることなく、各々が自分の機能の開発を進めることができます。
また、分岐させたブランチは機能の開発が完了した段階で大元のソースコードに取り込みます。(マージ)
この時、もし複数人が同じファイルの同じ箇所を変更し、かつそれぞれで変更内容が異なったらどうでしょう。
Git用語でこれを競合(コンフリクト)と呼びますが、Gitを使うことで競合の発生を検知し、修正するように警告を出してくれます。
このように、Gitは複数人でチーム開発をする際に非常に有効なのです。
おわりに
初心者向けGit解説シリーズということで、第1回はGitとは何か、Gitの有効性について説明してきました。
次回はリポジトリについて解説していきます!