はじめに
はじめまして、初投稿です。
学習したことの備忘録置き場として投稿していきたいと思います。本日は、現在もっとも苦労しているGitについて。
最後の目標として、同じようにGit初心者のかたが見ても理解しやすいよう随時、修正と追加をしていきたいと思います。
Git ってなに?
-
もともとLinuxカーネル開発用に作られたもの
-
オープンソースの分散化バージョン管理システムの1つ
(バージョン管理とは、変更履歴の管理) -
多くの開発者が利用している
*書き換えたと言われてもどこがか分からない。
*前のほうが良かった。
*同じような名前のデータが複数できている。
こんな事態を解消してくれるのがGitです!
Git を使うとこんな利点が
- 変更履歴を記録することができる
- 誰が、いつ、どこで、何のためにどこを変更したか管理できる
- 以前の状態に少ない作業で戻ることができる
- ソース内のコメントアウトが不要になり見やすい
- 余計なファイルを増やす必要がなくなる
最高ですね。
そしてGitHubは、このgitの仕組みを利用して、世界中の人たちがプログラムコードなど保存できるWebサービスです。
3つのデータ領域
-
作業ディリクトリ
→ git 管理下で実際に作業をするディリクトリ -
Git ディリクトリ
→リポジトリのすべての変更履歴を保持する場所 -
インデックス
→次回のコミット対象となるファイルを記録する場所
用語メモ
ワーキングツリー:作業をしているディレクトリ
リポジトリ:変更履歴を管理する場所(データの貯蔵庫)
- ローカルリポジトリ:自分のパソコン上のリポジトリ
- リモートリポジトリ:GitHubのリポジトリ(サーバに配置して複数人で共有できます)
インデックス:ワーキングツリーで編集をしてローカルリポジトリに保存する前に登録する場所。リポジトリへ追加する前にこの作業を挟まないといけません。
コミット :編集したファイルをローカルリポジトリに記録すること(予約内容の実行)
プッシュ:ローカルリポジトリにあるものをリモートリポジトリに送ること。
クローン:リモートリポジトリの内容をそのままローカルリポジトリとして複製でき、自分の手元で作業ができます。変更履歴も複製されているので途中から参加した人にも有り難いですね。
プル:複数人で作業すると皆それぞれリモートリポジトリにプッシュします。他の人がプッシュした変更内容を自分のローカルリポジトリに更新する際に行う操作です。プルをすると、リモートリポジトリから最新の変更履歴が取り込まれます。
ブランチ:分岐して個別に作業ができるディレクトリ。他からの影響を受けないため同じリポジトリのなかで複数の変更を同時進行することができます。