gitについて
gitとは、ファイルのバージョン管理が簡単にできるツールである。
gitで管理しているファイルであれば、コンピュータ上で、ファイルの編集管理ができるため、
編集前のファイルを残したまま、新しく編集したファイルを保存することができる。
したがって、gitではつぎのような事が可能となっている。
- 古いバージョンに簡単に戻せる
- 新旧のファイルを一元管理できる
- 編集した履歴を複数人で共有できる
- 複数人で修正した部分を一つに統合できる
リポジトリ(repository)
リポジトリとは、
ファイルやディレクトリを入れて保存しておく貯蔵庫のことである。
Gitにおけるリポジトリは以下の2種類に分かれている。
- リモートリポジトリ:特定のサーバー上に設置して複数人で共有するためのリポジトリ
- ローカルリポジトリ:ユーザーごとに配置される手元のマシンで編集できるリポジトリ
2種類のリポジトリに分けることで、
普段の作業はそれ ぞれのユーザーが手元のローカルリポジトリで行い、
作業内容を共有するときにリモートリポジトリで公開するという使い方になる。
このため、リモートリポジトリを介して他のユーザーの作業内容を把握する事が可能である。
コミット(commit)
コミットとは、ファイルやディレクトリの編集作業を
ローカルリポジトリに記録するために必要な操作のことである。
コミットを実行するとファイルを編集した日時を記録したファイルが生成される。
実際、この講義で勉強している、VScodeを使用した後、毎回このようにコミットをしている。
コミットを実行するごとにファイルが生成され、
時系列順にならんで格納されるため、ファイルを編集した履歴やその内容を確認する事ができる。
ワークツリーとインデックス
ユーザが編集している作業中のディレクトリのことをワークツリーという。
また、作業場所であるワークツリーと、保存場所であるローカルリポジトリの間には、
インデックスという中間領域が存在する。
Gitの使用上、ワークツリーで編集したファイルをコミットしたい場合は、
一度インデックスに登録しなければならない。
編集したファイルをリポジトリにコミットする前に、インデックスへ登録して、
仮置き(これをaddという)しておくようなイメージである。
コミット予定のファイルをインデックスに仮置きしておくことにより、
後からまとめて確認した上で、コミットできるので、
編集したファイルのコミットし忘れなどを防ぐ事ができる他、
余分なファイルを含めずにコミットできる。
ここまでの用語を図で表すとこのようになる