私の問題は、たとえば README などのファイルを変更し、新しい行「this for my testing line」を追加してファイルを保存した後、次のコマンドを発行したことです。
git status
# On branch master
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified: README
#
no changes added to commit (use "git add" and/or "git commit -a")
git add README
git commit -a -m 'To add new line to readme'
コードを GitHub にプッシュしませんでした。このコミットをキャンセルしたいと思います。
これには、
git reset --hard HEAD~1
しかし、 README ファイルから新しく追加された行「this for my testing line 」が失われました。これは起こるべきではありません。コンテンツがそこに存在する必要があります。コンテンツを保持してローカル コミットをキャンセルする方法はありますか?
ベストアンサー1
git reset
フラグなしで使用してください--hard
:
git reset HEAD~1
HEAD^
PS: Unix ベースのシステムでは、 と等しい を使用できますHEAD~1
。Windows では、は行継続を示すHEAD^
ため機能しません。そのため、コマンド プロンプトでは と尋ねられます。^
More?