「.NET 開発基盤部会 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
「ステージング(ステージされたスナップショット)」
などの技術解説の意味が解らんかったので、やっぱ基本は大事。
ほとんど全ての操作がローカル
Gitのコミットはスナップショットで、差分ではない
これにより、過去のバージョンの取得やブランチの切り替えが高速になる。
チェックサムが、
ファイルの内容もしくはGit内のディレクトリ構造を元に
SHA-1ハッシュで計算される。
リポジトリ(Repository) | Gitで管理されるプロジェクトのデータの保管場所。ローカルリポジトリとリモートリポジトリがある。 |
ワーキングツリー(Working Tree) | 実際に作業を行うディレクトリ。ここでファイルを編集し、変更を加える。 |
インデックス(Index, Staging Area) | git add で追加された変更が一時的に保存される領域。コミット前の準備段階。 |
HEAD | 現在チェックアウトされているブランチの最新のコミットを指すポインタ。 |
ブランチ(Branch) | コミットの履歴を分岐させる機能。開発の並行作業を可能にする。 |
コミット(Commit) | インデックスに追加された変更を記録する操作。リポジトリの履歴として保存される。 |
マージ(Merge) | 異なるブランチの変更を統合する操作。 |
リベース(Rebase) | ブランチの基点を変更し、履歴を整理する操作。 |
チェリーピック(Cherry-pick) | 特定のコミットのみを別のブランチに適用する操作。 |
タグ(Tag) | 特定のコミットに名前を付ける機能。リリースバージョン管理などに使用される。 |
リモート(Remote) | ネットワーク上にあるリポジトリ。GitHubやGitLabなどを指す。 |
フェッチ(Fetch) | リモートリポジトリの最新の変更を取得するが、ローカルのブランチには適用しない操作。 |
プル(Pull) | fetch + merge を行い、リモートの変更をローカルに適用する操作。 |
プッシュ(Push) | ローカルリポジトリの変更をリモートリポジトリへ送信する操作。 |
クローン(Clone) | リモートリポジトリをローカルに複製する操作。 |
ログ(Log) | git log で過去のコミット履歴を表示するコマンド。 |
リセット(Reset) | コミットの状態を過去の状態に戻す操作。--soft, --mixed, --hard などのオプションがある。 |
リバート(Revert) | 既存のコミットを打ち消す新しいコミットを作成する操作。履歴を残しつつ修正できる。 |
ステータス(Status) | git status で作業ツリーの状態を確認するコマンド。 |
ディフ(Diff) | git diff で変更点を比較するコマンド。 |
スタッシュ(Stash) | 作業中の変更を一時的に退避する機能。git stash で退避し、git stash pop で戻す。 |
ファイルに変更を加えたが、databaseにそれがまだコミットされていない状態
次のスナップショットのコミットに加えるために、
現在のバージョンの修正されたファイルに印をつけている状態。
local databaseにデータが安全に格納されている状態
git status でファイルの状態を確認できる。
プロジェクトのためのメタデータとオブジェクトのdatabaseがあるところ。
プロジェクトの一つのバージョンの単一checkout