これは、2 番目のローカル リポジトリでのリモート トラッキングの設定ミスが原因であると考えたため、この質問は無効であると判断しました。それを修正した後、期待どおりにプル後にファイルの内容が更新されます。ご意見をお寄せいただきありがとうございます。
ただし、フェッチ/プッシュの仕様は両側で問題ありませんでした。リモート トラッキングは正しくありませんでした。つまり、セクションの .git/config で、2 番目のローカル リポジトリの仕様[branch "my_branch"]
が間違っていたmerge
ため、期待したローカル ブランチとプルがマージされませんでした。 .
問題と修正に関するいくつかの詳細: 私が言ったように、フェッチとプッシュの仕様は問題ありませんでしたが、2 台目のマシンでローカル ブランチとその追跡をセットアップしたので、間違いを犯したに違いありません。最初のマシンの場合は正しかった。.git/config
見た中で
[branch "master"]
remote = origin
merge = refs/heads/master
[branch "1.3.0"]
remote = origin
merge = refs/heads/1.3.0
[branch "1.3.0-devel"]
remote = origin
merge = refs/heads/1.3.0-devel
ただし、2台目のマシンでは、ブランチを作成して追跡を設定するコマンドを間違って入力した可能性があるためgit branch -t my_branch_1 origin/my_branch_1
、同じ名前のリモートブランチを追跡したい多くのブランチに対して繰り返したところ、ブランチ名が一致しなかったため、結局このような設定で
[branch "master"]
remote = origin
merge = refs/heads/1.3.0-devel
[branch "1.3.0"]
remote = origin
merge = refs/heads/master
[branch "1.3.0-devel"]
remote = origin
merge = refs/heads/1.3.0
質問で言及したトランザクションは、1.3.0-devel ブランチで発生しました。最初のマシンから origin/1.3.0-devel にコミットしてプッシュしましたが、2 番目のマシンでは 1.3.0-devel が origin/ を追跡しなかったためです。 1.3.0-devel、pull は、現在チェックアウトされている 1.3.0-devel ローカル ブランチとマージされませんでした。
コマンドを発行し、git branch --set-upstream 1.3.0-devel origin/1.3.0-devel
他のすべてのブランチに対してこれを繰り返すことで、これを修正しました。(注、これは git バージョン 1.7.x 用です。1.8.x の場合は異なります)