Mengapa tidak ada "pathspec" ketika saya mencoba menghapus folder di Git?

9

Saya mencoba menghapus folder dari repositori Git saya dengan

git rm folderToRemove

tapi Git mengeluarkan kesalahan ini ketika saya mencoba melakukannya.

fatal: pathspec 'siteFiles/applicationFiles/templates/folderToRemove' 
did not match any files

Direktori saya saat ini adalah "template." Saya menemukan kesalahan ini aneh karena saya bisa cdmasuk ke folder "folderToRemove," jadi jelas ada. Apa artinya kesalahan ini?

David Faux
sumber

Jawaban:

17

Git tidak versi direktori, hanya "konten" (konten direktori atau file)

tidak cocok dengan file apa pun

Itu berarti tidak ada file untuk dihapus di dalamnya folderToRemove, seperti yang saya sebutkan di " Tidak dapat menghapus file secara rekursif dari Git ".
Anda sekarang dapat menghapus (Windows delatau Unix rm) direktori itu sendiri.

Seperti yang dijelaskan dalam " Menghapus direktori kosong di Git ", Anda juga dapat menjalankan:

git clean -fd

Namun:

Peringatan: Perintah clean menghapus semua file dalam copy pekerjaan saat ini yang tidak dilacak oleh git. Ini adalah cara yang baik untuk kehilangan pekerjaan Anda jika Anda belum menambahkan file baru ke git. Selalu jalankan git addsebelumnya git clean.

Jalankan lebih dulu:

git clean -d -x -n

Seperti yang dijelaskan dalam " Bagaimana cara menghapus direktori kerja lokal saya di git? ".

VONC
sumber
tetapi bagaimana cara "membersihkan" remote orang lain ketika mereka melakukan tarikan?
Ilea Cristian
@IleaCristian karena sifat didistribusikan dari Git, Anda tidak membersihkan remote, hanya klon Anda sendiri.
VonC
Masalahnya adalah kita tidak membuat build akhir. File proyek (yang dilihat IDE) sebenarnya adalah beberapa folder dengan "ekstensi" (myproj.xcworkspace atau myproj.xcodeproj). Saya ingin menghapus xcworkspace dan hanya meninggalkan xcodeproj. Pada dasarnya saya ingin memaksa orang-orang yang membuat build hanya menggunakan file xcodeproj.
Ilea Cristian