Bagaimana saya bisa menyingkirkan semua perubahan di semua file di repositori saya?
Katakanlah saya di cabang dan saya melakukan beberapa perubahan. git status
mengembalikan satu set file dalam "Perubahan tidak dipentaskan untuk komit" dan saya perhatikan saya ingin menyingkirkan semua perubahan ini di semua file. Bagaimana saya bisa melakukan ini dengan satu perintah?
Saya tahu saya dapat melakukan hal berikut untuk membayar hanya satu file:
git checkout -- <file>
Saya perhatikan bahwa git checkout --
hanya mengembalikan daftar semua file yang tidak terikat. Namun, saya tidak dapat menemukan cara untuk melakukan pembayaran semuanya, sepertigit checkout --all
.
Saya memeriksa man git checkout
dan tidak dapat menemukan apa pun. Saya juga melihat Git: Checkout semua file kecuali satu dan mencoba git checkout .
dan tidak berhasil juga.
Apakah saya harus melakukannya secara terprogram, dengan melakukan perulangan melalui git checkout --
output?
sumber
git checkout -- .
hanya akan mengatur ulang perubahan status indeks. Jadi jika Anda sudah menambahkan file ke indeks, itulah yang akan diatur ulang. Di sisi laingit reset --hard
, indeks juga akan dibuang, jadi misalnya jika Anda menambahkan file yang tidak terlacak ke indeks (untuk mulai melacaknya), file tersebut juga akan dihapus.git checkout
juga memungkinkan Anda untuk hanya memulihkan sebagian direktori kerja dengan melewati jalur yang lebih spesifik yang bisa sangat berguna.git checkout --force
,git reset --hard
Cara lain yang menurut saya berguna adalah:
Contoh:
Lebih umum:
sumber
git checkout \*
ataugit checkout '*'
.