ギットについて
Gitとは、ファイルの分散型バージョン管理システムの一つで、複数人で開発をする際に便利なツールです。
- 新旧ファイルの一元管理ができる。
- ファイルの変更履歴を共有できる。
- 簡単に過去のファイルに戻せる。
- 複数人の修正を1つに統合できる
- ネットワーク接続なしでも開発作業ができる。
ユーザーはローカルリポジトリで作業を行い、作業を終えたらリモートリポジトリに反映します。
用語
リポジトリ(repository)
ファイルや変更履歴を保存しておく保管場所のこと。
リモートリポジトリとローカルリポジトリの2種類がある。
・リモートリポジトリは、ネットワーク上に存在し、ファイルや変更履歴を共有する際に使う。
・ローカルリポジトリは、自分のコンピュータ上に存在し自分専用のリポジトリ。ここで作業を行う。
ブランチ(branch)
日本語で枝、分岐という意味。
開発の本流のブランチから分岐させることにより、他のブランチに影響を与えず開発を行える機能のこと。複数人が同時並行で作業できる。git branchコマンドによって実行される。
本流のブランチはmasterブランチと呼ばれ、プログラムの修正や機能の追加を行う際は、ブランチを追加しそれぞれブランチで作業をする。作業後は他のブランチに統合(merge)し、一つのブランチにまとめ直すことができる。
・統合ブランチとは、トピックブランチの分岐元として使用する本流のブランチ。通常、masterブランチを統合ブランチとして使用する。
・トピックブランチとは、作業を行うために追加したブランチのこと。通常、統合ブランチから分岐する形で作成する。
・「ブランチを切る」...ブランチを分岐・追加すること。
ステージング(staging)
ローカルリポジトリにコミットする前に、変更したファイルを選択して準備する作業のこと。git addコマンドによって実行される。別名コミット予定。
ワークツリーで作業したファイルをステージングして、その後ローカルリポジトリにコミットする。
コミットしたい特定の変更だけインデックスに追加できる。(一つのファイルの中の特定の行だけをステージングすることもできる。)
コミット前の最終確認や、システムやソフトウェアのテストや検証を行うためにも使える。
・インデックス(index)...コミットするためのファイルを登録するスペースのこと。別名ステージングエリア
コミット(commit)
新規作成したファイルや編集ファイルをローカルディレクトリに保存すること。実行するとファイルの編集内容・日時・作業者・コミットメッセージを記録したファイルが保存される。
git commitコマンドによって実行される。
プッシュ(push)
ローカルディレクトリからリモートディレクトリにアップロードし保存すること。
git pushコマンドによって実行される。
プッシュ前にプルを行い競合(コンフリクト)を解決してからプッシュが推奨される。
プル(pull)
リモートディレクトリからローカルディレクトリにダウンロードし反映させること。
git pullコマンドによって実行される。
・マージ(merge)...ブランチを統合する
・クローン(clone)...リモートリポジトリをまるまる複製する。
・リベース(rebase)...ブランチを統合する。コミット履歴を上書きする。
チェックアウト(checkout)
ブランチの切り替えやファイルの復元をする。
git checkoutコマンドによって実行される。
ディフ(diff)
指定した二つのファイルを比較してその違い(差分)を表示する。
git diffコマンドによって実行される。
ログ(log)
リポジトリのコミットの履歴を表示をする。
git logコマンドによって実行される。
スタッシュ(stash)
一時保存する
git stashコマンドによって実行される。
チェリーピック(cherry-pick )
必要なコミットだけをコピーできる。
git cherry-pickコマンドによって実行される。
参考にしたサイト
https://backlog.com/ja/git-tutorial/
https://git.command-ref.com/basic-word.html
コマンド
git add コマンド https://greenpenguin.hatenablog.jp/entry/2024/08/21/150557
git コミット コマンド https://greenpenguin.hatenablog.jp/entry/2024/08/23/155645
git push コマンド https://greenpenguin.hatenablog.jp/entry/2024/08/25/093041
git pull コマンド https://greenpenguin.hatenablog.jp/entry/2024/08/26/090110
git ブランチ コマンド https://greenpenguin.hatenablog.jp/entry/2024/08/20/225409
git チェックアウト コマンド https://greenpenguin.hatenablog.jp/entry/2024/08/27/045354
git diff コマンド https://greenpenguin.hatenablog.jp/entry/2024/08/27/084538
git ログ コマンド https://greenpenguin.hatenablog.jp/entry/2024/08/27/084605
git stash コマンド https://greenpenguin.hatenablog.jp/entry/2024/08/27/084627