Gitの特徴
「Git」の特徴です。前回紹介したとおり「Git」は「DVCS」なので、「DVCS」の特徴も持ちます。
「Git」の特徴を大別すると、以下のようになります。
- ネットワークに接続されていなくても、必要な作業が行える
- 多くの処理は自分のPCで行うため、高速に処理できる
ネットワークに接続されていなくても作業可能
「Git」で行多くの操作は、自分のPCにコピーしたファイルやリソースを利用して行います。そのためネットワークに接続されていない状況でも、「Git」で作業を行うことができます。
ネットワークへの接続を前提とする他のVCSと比較し、ネットワークの遅延や不安定さに影響を受けません。
また、自分のPCで処理を行うため、高速に処理を行うことができます。
もちろん、ネットワーク上のサーバーに変更したファイルを反映したり、サーバーから変更されたファイルを取得する時は、ネットワークに接続されている必要があります。
しかし、ファイルの編集や修正などユーザーが最も多く時間を割く作業は、自分のPCで行うことができます。
ファイルの変更履歴や以前のバージョンのファイル取得も可能
ファイルの編集や修正をする過程で、ファイルの変更履歴が見たくなることがあるでしょう。これらのリソースも自分のPCにコピーされます。
自分のPCで必要な情報を生成するため、ネットワークへの接続は必要ありませんし、高速に変更履歴を表示することができます。
以前のバージョンのファイルを取得したい時も、ネットワークへの接続は必要ありません。
一度サーバーからファイルやリソースをコピーしてしまえば、ネットワークの接続に関係なくほとんどの作業を自分のPCで行うことができます。
最終的な結果をサーバーに反映
ファイルの追加や編集などを行った後、データベースにファイルを保存する作業が必要になりますが、それらの作業も自分のPCで行います。自分のPCで最終的に出来上がった結果を、サーバーに反映するイメージです。
プロジェクトとGit
プロジェクトとは、作業の目標や目標を達成するための計画です。作業の単位を表すこともあります。
計画ということは、時間の経過や目的の変遷とともに、プロジェクトで使用するファイルやファイルの中身が変わっていきます。
時には、過去の編集前のファイルが必要になることもあるでしょう。
プロジェクトにおいて「git」は、プロジェクトで使用するファイルの管理を行います。
アプリの例
例えばプロジェクトの目標がアプリの開発なら、アプリをビルドするのに必要なファイル群を「git」で管理します。Webサイトの例
例えばプロジェクトの目標がWebサイトの開発なら、HTMLドキュメントやイメージ、CSSファイルなどのファイル群を「git」で管理します。ファイルの変更履歴や他のユーザーとの共同開発
プロジェクトに必要なファイルを「git」で管理すると、ファイルを管理する上で手間のかかる作業を「git」に任せることができます。「git」は、ファイルの変更履歴を管理するため、いつでも過去のファイルを抽出することができます。
ファイルがテキストファイルであれば、差分を簡単に取得することができます。
もちろんバイナリーファイルも「git」で管理できます。
また「git」は、ファイルを複数のユーザーで共有し編集する機能を提供しており、他のユーザーと共同開発を行うことができます。
不特定多数のユーザーにファイルを編集不可で公開することもできます。