要約:エラーを再現するには
- ブランチを作成してチェックアウト
- 他の誰かにそれを削除させて、同じ名前で新しいブランチを作成させてください
git branch -D <branch>
今やるgit checkout -b <branch> --track origin/<branch>
git pull
あなたが得る上で! [rejected] <branch> -> origin/<branch> (non-fast-forward)
これを修正するには、リモート追跡情報も削除する必要がありgit branch -d -r origin/<branch>
ます
古い:誰かが開発ブランチを削除し、それを作成してすべての機能ブランチを削除し、マスターをベースとして再び使用しました。次に、機能ブランチのいくつかを追加しましたが、問題を引き起こした他のブランチは追加しませんでした。
私はとをしましgit branch -D develop
たgit checkout -b develop --track origin/develop
。
今試してみるgit pull
と! [rejected] develop -> origin/develop (non-fast-forward)
git remote show origin
ショー_
Local refs configured for 'git push':
develop pushes to develop (local out of date)
私は今やることができますがgit fetch origin develop
、git merge FETCH_HEAD
それから私はいくつかの対立を抱えており、彼は開発するために多くのことを推し進めたいと思っています。(おそらく古いブランチがコミットしますか?)そして、git reset --hard
私はgitpullが拒否されたメッセージを表示するところに戻ってきました..
再作成されたブランチを最適にチェックアウトするにはどうすればよいですか?
編集:git branch -D develop
私が一緒git pull
! [rejected] develop -> origin/develop (non-fast-forward)
になってすべてをgit remote show origin
言ったときでさえ(最新)
編集:コミットメッセージが同じだったので、最初はそれを認識しませんでしたが、リセット後、HEADはリモートが持っていないshaにあるので、まだ「古い」ブランチにありますか?