ここに何が起こったのですか: 「ボブ」がマスターに直接プッシュしたため、私が3回コミットしたことに気づいたとき、私のレポのマスターブランチで作業していました。 git rebaseから復旧しました
はこれを解決するために、私はミスを犯した。この時点でgit checkout -b secondary
git push -u origin secondary
を行うことによって、「二次」ブランチを作成し、私は二次へプル原点マスター(ボブパッチ)をgitのを忘れていました。私はgob rebaseを実行して、 "bob"によって行われた9つのコミットを削除し、git push -fを実行しました。結果:すべてのボブコミットは、両方のブランチから消えてしまった。
幸いにも、その失敗の直前に、私はそれがマスターの後ろにあった2番目のマシンを持っていました。私はgit pull後に2つのコミットを押していました。マージの競合が原因でプルに失敗し、リセットとgitフェッチを行い、ボブの問題を修正してからやると思っていました。そのマシンの現在のステータスは次のとおりです。
On branch master
Your branch and 'origin/master' have diverged,
and have 2 and 22 different commits each, respectively.
(use "git pull" to merge the remote branch into yours)
nothing to commit, working directory clean
私は以来、どのコマンドも実行していません。これらの22のコミットには "Bob"のコミットも含まれています。その古い「フェッチされた」データをマスター/セカンダリにもう一度得る方法はありますか?あなたのどちらもが、まだローカルにコミットをして、彼らは運では、彼らがいない場合は、それらを見つけて復元しようとするreflog
(https://git-scm.com/docs/git-reflog)を使用して、私が提案し、サーバー上にない場合
すべてのヘルプは