まず、似たような言葉の質問がいくつかあることを知っています。
- git で origin/master の場所を見つけるにはどうすればよいですか? また、それを変更するにはどうすればよいですか?
- git: あなたのブランチは X コミット分先行しています
- Git: ブランチは X コミット分先行しています。git pull の実行に役立たない
- ブランチがオリジン/マスターより先にあることを示すプル専用レポの「gitステータス」。なんで?
それらのどれも(AFAICT)、この質問の私のバージョンに一致する答えはありません。
私の状況は次のとおりです。
$ git status
# On branch stable
nothing to commit (working directory clean)
$ git checkout master
Switched to branch 'master'
Your branch is ahead of 'origin/master' by 857 commits.
既存の質問では、受け入れられ、支持された回答は、文字通りそれが言うことを意味することにほとんど同意しています...私は先に進んでおり、新しいコミットをオリジン/マスターにプッシュする必要があります。
私のローカルmaster
ブランチはリモートの背後にあり、実際にはローカルで作業を行う前origin/master
に必要であるという逆の状況が当てはまることを私は知っています。git pull origin master
(またはおそらくただgit fetch origin
?)
Your branch is ahead of 'origin/master' by 857 commits.
私の質問は...メッセージが文字通り意味をなすように表現される理由はありますか?
現時点で私が理解している方法は、メッセージの意味とは反対であるためです(「私のブランチ」はオリジン/マスターの後ろにあります)。
それとも、「リモート マスター ブランチの HEAD が、ローカルのオリジン/マスター トラッキング ブランチより先にある」という意味ですか?
update FWIW 私は半ダースの他の開発者のチームで働いています。私たちは皆、プル、コミット、プッシュなどを 1 日に何度も問題なく行っています。ここにバグはありません...なぜGitがそのメッセージをこのように表現するのかを理解しようとしているだけです-表現自体が不適切に選択されているのか、それともGitの基本的な概念がこのように表現する原因となっているのかそして、私は正しく理解していません。
詳細
は、ここからの出力の関連部分であると私が推測するものですgit config -l
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
remote.origin.url=https://code.google.com/a/google.com/p/xxxxx/
branch.master.remote=origin
branch.master.merge=refs/heads/master
branch.master.mergeoptions=--no-ff