Yanıtlar:
İstediğiniz:
git rm --cached [file]
--cachedSeçeneği atlarsanız , çalışma ağacından da silinir. git rmbiraz daha güvenlidir git resetşube ucu veya diskteki dosya ya uymuyor içeriği sahnelenen eğer uyardı duyarız çünkü. (Yoksa, eklemeniz gerekir --force.)
git rm --cached, repo bunları kaldırmak için .gitignore, aşamayla alakalı dosya veya klasör ekleyebilir ve normal olarak işlemek. Depodan gidecekler, ancak yerel ağacınızda dokunulmadan kalacaklar ve yanlışlıkla tekrar kontrol edemeyeceksiniz.
Bu sizin için <dosya> 'yı bozar (dosyayı kaldırmadan veya başka bir şekilde değiştirmeden):
git reset <file>
HEAD.
HEAD!
git reset HEAD <file>
belirli bir dosyayı dizinden kaldırmak için.
ve
git reset HEAD
dizine eklenen tüm dosyaları kaldırmak için.
İş akışınıza bağlı olarak, bu, bir komut satırı çözümünü anlamaya çalışmak için çok az bir noktaya sahip olmanız için nadiren ihtiyaç duyduğunuz türden bir şey olabilir (herhangi bir nedenle grafik arabirim olmadan çalışmadığınız sürece).
Dizin yönetimini destekleyen GUI tabanlı araçlardan birini kullanın, örneğin:
git gui <- Tk pencereleme çerçevesini kullanır - gitkgit cola <- daha modern bir GUI arayüzüBunlar, dosyaları tıkla ve dizine göre dizinin içine ve dışına taşımanıza izin verir. Hatta bir dosyanın bölümlerini (bireysel değişiklikler) seçerek dizinden taşımak için desteğe sahiptirler.
Farklı bir bakış açısına ne dersiniz: Önerilen, şifreli komutlardan birini kullanırken karışıklık yaşarsanız:
git rm --cached [file]git reset HEAD <file>... veri kaybetme ya da en azından bulmayı zorlaştırma şansınız var. Bunu çok yüksek sıklıkta yapmanız gerekmedikçe, bir GUI aracı kullanmak daha güvenli olacaktır .
Yorumlara ve oylara dayanarak, birçok insanın endeksi her zaman kullandığını fark ettim. Yapmıyorum. Bunu nasıl yapacağınız aşağıda açıklanmıştır:
git commit -agit commit (list of files)git commit -ao zaman değiştirebilir yoluylagit guigit difftool --dir-diff --tool=meldgit commit -a. Bu soruyu cevaplarken, sizin için dosyaları dizine koyan (egzotik) bir " ters kiraz toplama " yapmıştım, ancak taahhütte bulunmadan önce bir dosyayı düzenlemek istedim. Dosyayı dizinden çıkardığımda farklı bir şekilde alıştığım şekilde çalışmasını sağladım.
rmancak ilk olarak şubeleri değiştirmenin göz ardı edilen klasörü öldürmeyeceğini düşündüm . ama ... benim için yeterince iyi olan github "gui tabanlı" aracını kullanıyorum ve bunu desteklemediği sürece bazı dizin yönetimini destekliyorum. peki, dar kullanım için 2 gui kullanmalıyım? hala cevap ile anlaşamıyorlar.