「git」におけるローカルブランチの追跡リモートブランチの確認方法
日本語訳:
「git」でローカルブランチがどのリモートブランチを追跡しているかを調べる方法について説明します。
コマンド:
git branch --set-upstream-to <remote>/<branch> <local-branch>
解説:
git branch
: ブランチに関する情報を表示します。--set-upstream-to
: 上流ブランチを設定します。<remote>/<branch>
: リモートリポジトリとブランチ名。<local-branch>
: ローカルブランチ名。
例:
ローカルブランチ「feature-branch」がリモートリポジトリ「origin」のブランチ「feature/new-feature」を追跡するように設定するには、次のようにします。
git branch --set-upstream-to origin/feature/new-feature feature-branch
確認:
設定が完了したら、次のコマンドで確認できます。
git branch -vv
これにより、ローカルブランチと追跡しているリモートブランチが表示されます。
注意:
- リモートリポジトリが「origin」でない場合は、それに応じてリモート名を変更してください。
- 追跡するリモートブランチが存在しない場合は、エラーメッセージが表示されます。
ローカルブランチの追跡リモートブランチの確認例
例1: git branch -vv
このコマンドは、ローカルブランチとその追跡しているリモートブランチの情報を表示します。
git branch -vv
出力例:
* main 429240f Merge pull request #1 from feature-branch
feature-branch d123456 New feature added
この例では、「main」ブランチが「origin/main」を追跡しており、「feature-branch」が「origin/feature-branch」を追跡していることがわかります。
例2: git rev-parse --symbolic-full-name HEAD@{upstream}
このコマンドは、現在のブランチの追跡リモートブランチのフルネームを返します。
git rev-parse --symbolic-full-name HEAD@{upstream}
origin/feature-branch
この例では、現在のブランチが「origin/feature-branch」を追跡していることがわかります。
例3: git config branch.<local-branch>.upstream
このコマンドは、指定したローカルブランチの追跡リモートブランチを設定または取得します。
git config branch.<local-branch>.upstream
origin/feature-branch
この例では、「feature-branch」の追跡リモートブランチが「origin/feature-branch」であることがわかります。
このコマンドは、現在のリポジトリの状態を表示します。追跡しているリモートブランチは、ステータスメッセージに表示されます。
git status
On branch main
Your branch is up to date with origin/main.
この例では、「main」ブランチが「origin/main」を追跡していることがわかります。
git remote show <remote>
このコマンドは、指定したリモートリポジトリの情報を表示します。追跡しているローカルブランチは、その情報に含まれています。
git remote show origin
* remote origin
Fetch URL: https://github.com/user/repo.git
Push URL: https://github.com/user/repo.git
HEAD remote: refs/heads/main
Tracking branches on your current branch:
main -> origin/main
この例では、「origin」リモートリポジトリが「main」ブランチを追跡していることがわかります。
git log --decorate --oneline --graph
このコマンドは、コミット履歴をグラフィカルに表示します。追跡しているリモートブランチは、コミットの参照名に表示されます。
git log --decorate --oneline --graph
* c321456 (HEAD, origin/main, main) Merge pull request #1 from feature-branch
|\
| * b123456 (origin/feature-branch) New feature added
|/
* a987654 Initial commit
git branch git-remote