技術者ブログとして日ごろ取り組んでいる学習内容をご紹介します。
最近、Gitに触れる機会がありましたので、今回は、その基礎について説明します。
ちなみに、外付けHDDなどで同じファイルの複数バージョンを保存し、以下のようにファイル名によって管理していることがありますか。

個人のファイルでしたら、これで十分かもしれませんが、大規模のプロジェクトのソースコードの場合では、より精密な管理が必要になります。そこで、Gitが登場します。
Gitとは
Gitは、バージョン管理システム(version control system、「VCS」)です。その役割は、ファイルの変更履歴を追跡し、管理することになります。そして、追跡によって、管理されているファイルを過去の特定の時点の状態に戻すことと、変更内容を比較・統合することができます。
特に、複数人が関わるプロジェクトでは、Gitを使うと、どのファイルがいつ、誰によって、どのように変更されたかを可視化して、不意な上書きや意図しない変更を防止することができます。
リポジトリとは
Gitによって管理されているファイルは、リポジトリに保存されています。リポジトリの種類を大きく分けると、「ローカル」と「リモート」があります。ファイルを保存する時、変更点がどのリポジトリに対して適応されるか、意識する必要があります。
Gitは「分散型」のVCSのため、開発者が自分のローカルリポジトリで完全な履歴を持つことができます。オフラインの状態でも、ファイルの編集や履歴の確認などが可能です。
リモートリポジトリは、GitHub、GitLabやBitbucketなどのプロバイダーによって提供されています。(もちろん、自分で作成し、運用することも可能です。)ファイルの保存先が「オンライン」のため、チームで作業を共有したり、協力したりすることが簡単になります。

ブランチとは
例えば、新しい機能を実装する時、あるいは既存のソースに影響範囲が分からない変更を加える時、プロジェクトのソースをその場で更新することが危険です。このような場合には、独立している「ブランチ」を作成し、プロジェクト全体に影響を与えない場所で、新しい機能・変更の動作を確認できます。
新機能、修正の開発が完了し、動作確認で問題が生じなければ、ブランチの内容をメインに統合することで、変更を正式に反映させることができます。

次回の技術者ブログをお楽しみに。