リモートトラッキングブランチのトラッキングを制御するコマンドの説明
「git remote」コマンドは、リモートトラッキングブランチのトラッキングの有効・無効を切り替えることができます。トラッキングを無効したリモートトラッキングブランチは、fetchを行ってもブランチが指す「コミットオブジェクト」は変更されません。
コマンドのフォーマット
コマンドのフォーマットは以下のようになります。
git remote set-branches <オプション> <リモートリポジトリー名> <ブランチ名>
オプション
トラッキング設定方法に関するオプションです。このオプションは省略できます。
オプションの指定なし
「ブランチ名」で指定したリモートトラッキングブランチのみ、トラッキングが有効になります。「ブランチ名」で指定されなかったリモートトラッキングブランチは、トラッキングが無効になります。
トラッキングを有効にするブランチの指定(--add)
「ブランチ名」で指定したリモートトラッキングブランチのトラッキングを有効にするオプションです。「ブランチ名」で指定されなかったリモートトラッキングブランチのトラッキングの有効・無効は変更されません。
このオプションの使用例は、「リモートトラッキングブランチのトラッキングを有効にする」を参考にしてください。
リモートリポジトリー名
操作対象のリモートトラッキングブランチを含むリモートリポジトリーの名称を指定します。ブランチ名
操作対象のリモートトラッキングブランチの名称を指定します。複数のリモートトラッキングブランチを指定する場合は、ブランチ名をスペースで区切って記述します。
リモートトラッキングブランチのトラッキングを制御する
リモートトラッキングブランチのトラッキングを制御します。ここでは例として、「origin/master」リモートトラッキングブランチのトラッキングを有効にし、「origin/sub」リモートトラッキングブランチのトラッキングを無効にします。
1.リモートリポジトリーの確認
「origin」リモートリポジトリーの情報を確認すると、以下のようになっています。「Remote branches」の項目を見ると、「master」と「sub」が「tracked」になっています。
2.ブランチの確認
ブランチの一覧を表示すると、以下のようになっています。3.コマンドの実行
「端末」から、以下のコマンドを実行します。
git remote set-branches origin master
4.コマンドの実行結果
問題なければ、特にメッセージは表示されません。5.リモートリポジトリーの確認
「origin」リモートリポジトリーの情報を確認すると、以下のようになっています。「Remote branch」の項目を見ると、「master」が「tracked」になっています。
6.ブランチの確認
ブランチの一覧を表示すると、トラッキングを無効にした「origin/sub」ブランチは削除されず、変更前と同じブランチ構成になっています。後でトラッキングを有効にしfetchを行えば、「リモートブランチ」の状態が反映されます。