web-dev-qa-db-ja.com

git pull --rebaseを元に戻す

ちょっと私はgitが初めてなので、プルを元に戻す必要があります。だれでも手伝ってくれる?だから私がやったことは...

  1. git commit
  2. git stash
  3. git pull --rebase
  4. git stash pop

これはたくさんの衝突を引き起こし、少し間違っていました。 「git stash list」を実行すると、私のstashがまだ残っていることがわかります。 git commitを実行した直後に、私のリポジトリを元の状態に戻すことは可能ですか?だから私のレポは事実上私が行った変更だけを含み、サーバーから新しいものは何もないのですか?

44
Thomas

git reflogを使用すると、過去のコミットのリストが表示されますHEAD

使用する

git checkout -b after-commit HEAD@{1} # or the commit you want to recover

その正確な位置に新しいブランチを作成し、チェックアウトします

46
knittl

実際、これを簡単にするために、GitはORIG_HEADという名前の参照を保持し、リベース前の場所を示します。したがって、次のように簡単です。

git reset --hard ORIG_HEAD
106
Pat Notz

コマンドをチェックアウトする必要があります

git reset --merge

これにより、git commitが不要になります。プルする前にgit stash(ただし、リベースについては知らない)

このコマンドは、コミットが競合する前の状態へのコミットされていない変更を含むワークスペースを返します。

5