Yanıtlar:
Sadece kullanırsanız rm, takip etmeniz gerekir git add <fileRemoved>. git rmbunu tek adımda yapar.
Ayrıca git rm --cacheddosyayı dizinden kaldıracak şekilde kullanabilirsiniz (bir sonraki işlemde silinmek üzere hazırlar), ancak kopyanızı yerel dosya sisteminde saklar.
rm(yerine git rm) kullandım ve kullanarak birçok dosyayı sildim ve şimdi bunları gitizlemek istemiyorum . Değişiklikleri geri almanın bir yolu var mı? İstediğim gitbenim ayak basmaya rmkullandığım vermedi beri olarak uzaklaştırıldı git rmilk etapta.
Kullanarak dosyaları kaldırmak rmkendi başına bir sorun değildir, ancak daha sonra dosyanın kaldırıldığını taahhüt etmek istiyorsanız, git rmyine de yapmanız gerekir, bu yüzden bunu yarasadan hemen yapabilirsiniz.
Ayrıca, kabuğunuza bağlı olarak git rm, dosyayı sildikten sonra yapamazsınız, sekme tamamlama elde edemezsiniz, bu nedenle yolu kendiniz yazmanız gerekir, oysa git rmdosya devam ederken sekme tamamlama normal olarak çalışır.
Ancak, git rm yerine rm kullanarak bitirirseniz. Git add'i atlayabilir ve aşağıdakileri kullanarak değişiklikleri doğrudan uygulayabilirsiniz:
git commit -a
Dosyaları dizinden veya çalışma ağacından ve dizinden kaldırın. git rm bir dosyayı yalnızca çalışma dizininizden kaldırmaz.
Bunu kullanarak bir dosyayı nasıl silip rm -fardından dizininizden kaldırabileceğiniz aşağıda açıklanmıştır:git rm
$ rm -f index.html
$ git status -s
D index.html
$ git rm index.html
rm 'index.html'
$ git status -s
D index.html
Ancak bunu tek seferde yapabilirsiniz git rm
$ git status -s
$ git rm index.html
rm 'index.html'
$ ls
lib vendor
$ git status -s
D index.html
Andy'nin cevabına ek olarak, aşağıdakiler için ek bir yardımcı program var git rm:
Güvenlik : git rmBunun yerine rmGit HEAD, bir dosyanın sürümü ile hazırlama dizini veya çalışma ağacı sürümü arasında bir tutarsızlık olması durumunda kaldırmayı engelleyecektir . Bu blok, devam eden değişikliklerin kaldırılmasını önleyen bir güvenlik mekanizmasıdır.
Korunması : git rm --dry-run. Bu seçenek, git rmkomutu yürütecek ancak dosyaları gerçekten silmeyecek bir korumadır. Bunun yerine, kaldırılacak dosyaları çıkarır.
git reset --hardAyrılmış kafa durumundan çıkmak için bir master ödülü kullanabilir ve sonra bir ödeme yaptım çünkü taahhüt edilmemiş herhangi bir değişiklik olmadığını biliyordum. Değişikliklerinizi yapmadıysanız bir git stash yapmak isteyebilirsiniz, ama git için nispeten yeniyim, bu yüzden kesin komutu bilmiyorum. 2014 yılında veya sonrasında buraya geldiyseniz, umarım bu cevap sizin için yararlı olmuştur.