私はちょうどgithubからプルして、間違ったgithubリポジトリから自分のプロジェクトにプルしました。これを元に戻すにはどうすればよいですか?間違ったgithubリポジトリからプルを元に戻す
ありがとうございます!コミットの歴史に
私はちょうどgithubからプルして、間違ったgithubリポジトリから自分のプロジェクトにプルしました。これを元に戻すにはどうすればよいですか?間違ったgithubリポジトリからプルを元に戻す
ありがとうございます!コミットの歴史に
git reset --hard HEAD^
このコマンドは、ブランチを直前のコミット、つまり取り消したいコミットの前のコミットにリセットします。あなたの仕事は変わりません。
コミットされたすべてがまだ緩いオブジェクトとして存在し、git reflogを使用してHEADが以前に指し示したバージョンに戻すことができることを覚えておいてください。これはgitで頻繁にコミットすることが非常に重要であるため、簡単に行ったすべての変更を元に戻すことができます。
一つの方法git reflog
をお試しください。 Reflogでは、ほぼすべての操作を元に戻すことができます。あなたは汚れた作業コピーを持っていた場合は、この
git reset --hard [email protected]{1}
よう 何かがしかし、それはすべての変更内容を消去するので、注意してくださいます。
を表示するには、この
$ git reset --hard latest-good-commit-hash
使用git log --all
(またはそれ以上のグラフィック、gitk --all
を使用)を行うには
ありがとうございました!私は追加してコミットしましたが、プッシュしませんでした。追加されてコミットされたものは、今はこれで乗り越えられませんでしたか? – Barka
これは間違いなく、あなたが追加してコミットした場合、追加してコミットしたものは、これ以降もそこに残ります。 –
@ user277498、 'reset'を行う前に' git reflog'の出力も見てください。 –
これらの答えは 'git reset --hard _some local commit_'を使ってリポジトリを見えるようにしますが、すべての情報を残しておいてください。ローカルリポジトリの間違ったリモートリポジトリからコミットするので、完全な "取り消し"はありません。 git gcはあなたのreflogにあるため(間違いを最近参照したので)間違ったコミットを削除することはありません。私は彼らが最終的に失効すると思うが、あなたがすぐにそれらを殺したい場合は、より深い手術が必要です。 – skierpage
@skierpage正しい。あなたがそれらをきれいにするまで、コミットはまだそこにあります。これを行うにはさまざまな方法があります。最も簡単な方法は、リポジトリを再クローンすることです(あなたが今使っているものを捨てることができると仮定して) – ralphtheninja