コマンド
git add
変更を作業ディレクトリからステージングエリアに移動します。これによって、公式履歴にコミットする前にスナップショットを作成する機会が与えられます。
関連するチュートリアル
Git Branch コマンド
このコマンドは汎用のブランチ管理ツールです。これによって、単一のリポジトリ内に複数の独立した開発環境を作成できます。
関連するチュートリアル
Git checkout
git checkout は、古いコミットや古いファイル リビジョンのチェックアウトに加え、既存のブランチを操作する手段でもあります。基本的な Git コマンドと組み合わせると、特定の開発ラインで作業を行う手段となります。
関連するチュートリアル
git clean
作業ディレクトリから追跡対象外ファイルを削除します。これは、(通常)追跡対象ファイルのみに作用する git reset と論理的に対をなすコマンドです。
関連するチュートリアル
Git チュートリアル - git clone
既存の Git リポジトリのコピーを作成します。クローニングは、開発者が中央リポジトリのコピーを作業用として入手する最も一般的な方法です。
関連するチュートリアル
git commit
ステージされたスナップショットを作成し、プロジェクト履歴にコミットします。git add とともに、すべての Git ユーザーが使用するワークフローの基本を形づくります。
関連するチュートリアル
Git commit --amend
git commit に --amend フラグを渡すことにより、直前のコミットを修正できます。ファイルをステージし忘れたり、コミットメッセージから重要な情報を削除したりする場合に非常に便利です。
関連するチュートリアル
git config
Git インストールの構成オプションを設定する便利な方法です。通常は、新しい開発マシンに Git をインストールした直後にのみ、これを使用する必要があります。
関連するチュートリアル
git fetch
フェッチすることによって、他のリポジトリからブランチがダウンロードされ、それに関連するすべてのコミットとファイルも一緒にダウンロードされます。しかし、これによってローカルリポジトリに何かが統合されることはありません。フェッチは、自分のプロジェクトにブランチをマージする前に、変更を確認する機会を与えてくれます。
関連するチュートリアル
git init
新しい Git リポジトリを初期化します。プロジェクトをリビジョン コントロール下に置く場合、これが最初に学習する必要のあるコマンドです。
関連するチュートリアル
git log
プロジェクトの以前のリビジョンを探査できます。コミット済みのスナップショットを表示する出力形式として、いくつかのオプションが用意されています。
関連するチュートリアル
Git merge
分岐したブランチから変更を統合する強力な手段です。git branch でプロジェクト履歴をフォークした後、git merge によって、再び 1 つの履歴に戻すことができます。
関連するチュートリアル
git pull
プルは、自動化されたバージョンの git fetch です。リモート リポジトリからブランチをダウンロードしてから、すぐに現在のブランチにマージします。これは svn update と同等の Git です。
関連するチュートリアル
Git のプッシュ
プッシュはフェッチとは逆です (いくつか注意事項があります)。プッシュを行うと、1 つのローカル ブランチを別のリポジトリへ移動して、自分の作業を簡単に公開することができます。これは svn commit と似ていますが、単一のチェンジセットではなく一連のコミットを送信します。
関連するチュートリアル
Git rebase
リベースによって、ブランチを移動させることができ、不必要なマージコミットが避けられます。リベースの結果、履歴が直線的になるため、たいていの場合、履歴を理解し、探査するのがずっと楽になります。
関連するチュートリアル
git rebase -i
-i フラグを使用すると、対話型リベースセッションが開始されます。これによって、通常のリベースを使うメリットがすべて得られるとともに、リベースの過程でコミットの追加、編集、削除を行うことができます。
関連するチュートリアル
git reflog
Git は reflog と呼ばれる仕組みを用いて、ブランチの先端に対する更新を常に追跡します。チェンジセットがブランチやタグのいずれからも参照されていない場合でも、この reflog によってそのチェンジセットに戻ることができます。
関連するチュートリアル
git remote
リモート接続を管理するための便利なツールです。fetch、pull、push の各コマンドに完全な URL を渡す代わりに、より意味のあるショートカットを使用できます。
関連するチュートリアル
Git のリセット
作業ディレクトリ内のファイルに対する変更を元に戻します。リセットすると、公開リポジトリにプッシュされていない変更をクリーン アップしたり、完全に削除したりできます。
関連するチュートリアル
Git revert
コミットしたスナップショットを元に戻します。コミットに誤りが見つかった場合、誤りのあるコミットをリポジトリから完全に取り除くためには、打ち消しが安全で簡単な方法です。
関連するチュートリアル
git status
作業ディレクトリとステージされたスナップショットの状態を表示します。このコマンドを git add および git commit とあわせて実行すると、次のスナップショットに含まれるファイルを正確に把握できます。
関連するチュートリアル
ブランチ
ブランチとは独立した開発ラインを意味します。ブランチは、このシリーズの最初の章である Git の基本で説明している編集/ステージ/コミットプロセスを抽象化した概念です。まったく新しい作業ディレクトリやステージングエリア、プロジェクト履歴を要求する 1 つの手段として、ブランチをとらえることもできます。新しいコミットはカレントブランチの履歴に記録され、その結果、カレントブランチはプロジェクト履歴のフォークを形成することになります。
関連するチュートリアル
集中化ワークフロー
開発者が既に Subversion に慣れ親しんでいる場合は、集中型ワークフローを採用することで Git のメリットを活用できます。新たなプロセスにあくせくする必要もありません。また、より Git 指向のワークフローに対するわかりやすい移行手段として機能します。
関連するチュートリアル
フィーチャー ブランチ ワークフロー
フィーチャー ブランチ ワークフローは、新しい機能を専用ブランチにカプセル化することで集中型ワークフロー上に構成されます。これによって、変更を公式プロジェクトに統合される前に、変更について議論する手段としてプル リクエストを使用できるようになります。
関連するチュートリアル
フォーク
開発者は "中央" リポジトリの役目をになう、単一のサーバーサイド リポジトリを使用する代わりに、フォークによってそれぞれのサーバーサイド リポジトリを与えられます。つまり、それぞれのコントリビューターは 1 つではなく、2 つの Git リポジトリ、すなわち、非公開のローカルリポジトリと公開されたサーバーサイドリポジトリを保有することになります。
関連するチュートリアル
Gitflow ワークフロー
Gitflow ワークフローは、フィーチャー開発、リリース準備、メンテナンス用の独立したブランチによってリリース サイクルを効率化します。また、Gitflow ワークフローの厳密なブランチング モデルは、大規模なプロジェクトが本当に必要とするフレームワークを提供します。
関連するチュートリアル
HEAD
現在のスナップショットを参照するために Git が使用する手段です。内部的には git checkout コマンドは単に HEAD を更新して、特定のブランチまたはコミットをポイントするものです。HEAD がブランチをポイントしても Git の警告は発生しませんが、コミットをチェック アウトすると "detached HEAD" (デタッチ状態の HEAD) 状態に切り替わります。
関連するチュートリアル
Hook
Git リポジトリで特定のイベントが生じるたびに自動で実行されるスクリプトです。フックによって Git の内部動作をカスタマイズして、カスタマイズ可能なアクションを開発ライフ サイクルの重要なポイントでトリガーできます。
関連するチュートリアル
Main
既定の開発ブランチ。git リポジトリを作成すると、その都度 "main" と名付けられたブランチが作成されてアクティブなブランチになります。
関連するチュートリアル
プル リクエスト
プル リクエストは Bitbucket によって開発者のコラボレーションを促進する機能の 1 つです。使いやすいウェブ インターフェイスで、提案された変更を公式プロジェクトに統合する前に議論できます。
関連するチュートリアル
リポジトリ
コミットを識別するコミット、ブランチ、タグの集合。
関連するチュートリアル
タグ
コミット チェーンにある特定のポイントをマークするために一般的に使用される参照です。head とは対照的に、commit コマンドではタグは更新されません。
関連するチュートリアル
バージョン管理
あとで特定のバージョンを呼び出せるように、ファイルまたは一連のファイルに対する変更を時間の経過にしたがって記録するシステム。
関連するチュートリアル
ワーキングツリー
実際にチェックアウトされたファイルのツリーには、通常 HEAD コミットのツリーの内容と、まだコミットされていないローカルの変更が含まれています。