0

オリジンとgit statusレポートからフェッチしました:

あなたのブランチは origin/ から 13 コミット遅れており、早送りできます

厳密に言えば、これどういう意味ですか?それは意味しますか:

  1. これは、対応するremote-tracking-branch ( ) のHEAD背後にあります。origin/<branch_name>

  2. または、対応するリモート トラッキング ブランチ( ) の<branch_name>背後にありますか?origin/<branch_name>

離れ た場所にいる場合はどうなりHEADますか? (つまり、 myHEAD<branch_name>が同じコミットを指していない場合)。

これらのポインター ( HEAD<branch_name>およびorigin/<branch_name>グラフを視覚化する方法はありgit log --graphますか?

4

2 に答える 2

3

例を見てみましょう。このリポジトリには、originというブランチで呼び出されるリモートがありますmastermaster現在チェックアウトしているというブランチもあります。

% git log --decorate --graph --pretty=oneline --abbrev-commit --all
* 072a57a (origin/master, origin/HEAD) C
* 87011c4 B
* d3c4a48 (HEAD, master) A

実行git statusすると、ブランチが2 つのコミットmasterで遅れていることがわかります。origin/master

% git status
# On branch master
# Your branch is behind 'origin/master' by 2 commits, and can be fast-forwarded.
#
nothing to commit (working directory clean)
于 2012-10-08T15:41:03.900 に答える
1

「あなたのブランチ」はあなたがいるブランチを意味HEAD<branch_name>、1と2は同じことを意味します。(git statusすべてのローカル ブランチではなく、現在のブランチのステータスについてのみレポートします。)

メッセージは、ブランチがリモート ブランチ ヘッドの直接の祖先であるコミットを指していることを意味するため、リモート ブランチのヘッドの親コミットのネットワーク上のどこかのコミットを指しています。これほど複雑なことはありません。

ヘッドが切り離されているときにメッセージを受け取った場合は、バグをログに記録する必要があります。発生しないはずです。

ブランチ名がリモートのブランチ名と一致している必要はないことに注意してください - メッセージは、追跡されている場合、それ<alt-branch-name>が遅れていることを示します。origin/<branch-name><alt-branch-name>origin/<branch-name>

于 2012-10-08T15:25:36.747 に答える