Git: Bagaimana mengembalikan 2 file yang dengan susah payah macet di "Berubah tetapi tidak berkomitmen ”?

Saya memiliki repo yang memiliki dua file yang seharusnya saya ubah secara lokal.

Jadi saya terjebak dengan ini:

$ git status
# On branch master
# Changed but not updated:
#   (use "git add ..." to update what will be committed)
#   (use "git checkout -- ..." to discard changes in working directory)
#
#       modified:   dir1/foo.aspx
#       modified:   dir2/foo.aspx
#
no changes added to commit (use "git add" and/or "git commit -a")

Melakukan git diff mengatakan bahwa seluruh konten file telah berubah, meskipun dari melihat itu tampaknya tidak benar (tampaknya ada rentang baris umum yang diff tampaknya gagal untuk dilihat).

Menariknya, saya tidak ' Saya tidak ingat mengubah file-file ini secara lokal. Repo ini digunakan dengan satu remote repo (pribadi, di GitHub.com, FWIW).

Apa pun yang saya coba, saya tidak dapat membuang perubahan lokal ini. Saya telah mencoba semua dari:

$ git checkout -- .
$ git checkout -f
$ git checkout -- dir1/checkout_receipt.aspx
$ git reset --hard HEAD
$ git stash save --keep-index && git stash drop
$ git checkout-index -a -f

Dengan kata lain, saya telah mencoba semua yang dijelaskan di Bagaimana cara saya membuang perubahan yang tidak dipentaskan di Git? dan lebih banyak lagi. Tetapi 2 file tetap macet sebagai "diubah tetapi tidak dilakukan".

Apa sih yang menyebabkan dua file macet seperti ini dan tampaknya "un-revert-table" ??

PS Dalam daftar di atas yang menampilkan perintah yang sudah saya coba, saya salah menulis git revert saat saya eant git checkout . Saya minta maaf dan terima kasih kepada Anda yang menjawab bahwa saya harus mencoba checkout . Saya mengedit pertanyaan untuk memperbaikinya. Saya pasti sudah mencoba checkout .

79
задан Community 23 May 2017 в 11:54
поделиться