web-dev-qa-db-ja.com

警告:壊れた参照ref / refotes / Origin / HEADを無視する

数日前から、押すたびに tab bashでブランチ名を完成させるためのキー

警告:壊れたref refs/remotes/Origin/HEADを無視する警告:壊れたref refs/remotes/Origin/HEADを無視する

たとえば、これはfeature/fooというブランチがあり、押すと表示されます tab

git checkout f

$ git checkout fwarning: ignoring broken ref refs/remotes/Origin/HEAD
warning: ignoring broken ref refs/remotes/Origin/HEAD
eature/
43
sensorario

最近、私のチームの誰かがリモートから古い開発ブランチを削除したときにこれに遭遇しました。このコマンドを実行して、HEADのステータスを確認しました。

$ git symbolic-ref refs/remotes/Origin/HEAD
refs/remotes/Origin/old_dev

このコマンドは、存在しない古い開発ブランチの名前を出力します。

これを使用して警告を修正しました。

$ git symbolic-ref refs/remotes/Origin/HEAD refs/remotes/Origin/new_dev

(「new_dev」はブランチ名です。HEADが指すブランチの名前に置き換えます。)

52
kdechant

これはsymbolic-refよりも簡単な解決策です。


除外した可能性があるOrigin/HEADが最初に指していたブランチ。

1。でリモートブランチを一覧表示します:

git branch -r

2。結果に表示されない場合:

Origin/HEAD -> Origin/(something)

。でもう一度ポイントします:

git remote set-head Origin master

ここで、「マスター」はプライマリ(ヘッド)ブランチの名前です。


git branch -rを再度実行するとOrigin/HEAD -> Origin/(something)が表示され、警告は消えます。

35
Paulo Coghi

リモートOriginのデフォルトブランチはもう存在しないようです。
リモートのデフォルトブランチを修正します。

1
zigarn

コマンドを実行するだけです-

git remote set-head Origin master

楽しい!

0
simonbor