2016-07-17 5 views
0

私は多分24回のコミットを持っています。私は15をコミットするためにチェックアウトしています。どうすれば私の最後のコミットに戻ることができますか?最近のコミットへのGitチェックアウト

注:私はコミットのようにたくさん走っています。

git revert , git checkout, git reset. 

私のlatesコミット名、ID、またはファイルさえ知りません。私が約束したことを知っているすべてが、私はそこにいません。

しかし、私は最新のコミットに戻れませんでした。

+2

「git reflog」を試してみるとよいでしょう。このコマンドは最後に行ったことを示し、最新のものを先頭に表示します。左側のハッシュは、そのアクションの後にチェックアウトされたコミットです。 – lucash

+0

のgit bashのを使用して、あなたはすべての枝のリストを取得するには、次のコマンドを発行することができます - その後 'Gitのbranch' を、あなたは、任意のブランチの最新をチェックアウトするには、次のコマンドを発行することができます - ' Gitチェックアウト ' 履歴を確認したい場合は、次のコマンドを発行できます。 'git log' – ArunGeorge

+0

ありがとうございます@lucash。 git reflogの後、私は最新のコミットIDにチェックアウトします。 –

答えて

1

最後に、ここにいる友人の助けを借りて、私は解決策を考え出します。私はそれを投稿resean。他の人にも役立つかもしれません。

まず、すべて私の最後のコミットを示すためにgit reflogに行っていました。

第二に、私はgit checkout commit_id

第三に、git log --graph --decorate --pretty=oneline --abbrev-commit master github/master tempを使用。

次に、git branch -f master temp

およびgit branch -d temp

最後に、git push --force github master

-1

git checkout fooありがとうfoo枝の上に最新のコミットをチェックアウトします。 masterで作業している場合は、git checkout masterコマンドを実行します。

編集:この場合、分離された頭にコミットしているようです。 this questionのアドバイスに従い、今後これを避けてください。

+0

それは私のチェックアウトコミットではないコミットをコミットします。チェックアウト後、私は働いてコミットしましたが、表示されません –

+0

"checkout commit not latest commit"とは何を意味しますか? – Jim

+0

私はgit checkout 6d15fe9179a22ebb97333cb2fc15c1757d2d29f2を使っていました。チェックアウト後、私は追加して多くのコミットをしました。今私は私の頭がチェックアウトコミットではない最新のコミット –

関連する問題