2016-05-17 16 views
7

Gitmeyi öğreniyorum, ancak farklı aşamalarda hazırlama ve işlem yapma konusunda kafam karıştı. Kafamı bunun etrafına sarmak için bir dizin metaforu kullanıyorum: çalışma dizini, sıralama dizini, dizin dizini.Ne zaman kullanmalıyım? Rm, git rm --cached, git add

  • Ben rm Eğer benim çalışma dizinden dosya, sadece o benim çalışma dizininden sadece kaldırır. Bu doğru mu?
  • I git rm Çalışma dizinimden bir dosya alırsa, bu dosyayı tüm üç dizinden kaldırır. Doğru?
  • Bir dosya git rm --cached bir dosyaysa, bu dosya benim bozuk ve dizinleri işten kaldırır, ancak çalışma dizinimde bırakır mı?
  • Güncellenmiş varsa, git status gösterileri eklenen, silinen ve güncellenmiş dosyaları sahnelenen sonra, ilave ve benim çalışma dizindeki dosyaları silinmiş ve git add . yapmak. Yaptığımda ne olur? silinmiş dosyalar Commit dizininden kaldırıldı mı? Daha sonra işlem yapacak olan 'a geri dönersem silinen dosyalar tekrar görünür mü?

Bu kavramları daha iyi anlamak için herhangi bir yardım mutluluk duyacaktır-teşekkürler!

cevap

17

Aşama alanını (dizin veya önbellek olarak da bilinir) ve --cached seçeneğini anladığınızdan emin olun. documentation for git rm devletler

--cached 

Kullanım

bu seçenek unstage ve sadece dizinden yolları kaldırın. Çalışma ağacı dosyaları, değiştirilmiş olsun ya da olmasın, yalnız bırakılacak. Listenizde aşağı Running

  • rm file verir - sadece
  • git rm çalışma dizinden dosya kaldırmak - iş dizinden ve aşama alanından dosyayı kaldırmak ancak tarihin henüz dahil (deposu, “commit directory”)
  • git rm --cached - çalışma alanından kaldırılmamış ancak çalışma dizini ya da ne çalışma alanı yok
  • Değişiklikler, yeni dosyalar ve silinen dosyaların bulunduğu- git önbellek değişiklikleri ve yeni imzasız dosyaları kaydeder. (git add belli seçeneklerle farklı davranır.)

çeşitli git komutlara --cached seçenek onları endeksi çalışmasına neden olur ya da en azından endeksine göre.

git add ve git rm, çalışma dizininden dizine veya önbelleğe değişiklik yapar. Bu komutları, bir sonraki görevinizi bir anda oluşturmayı düşünün.

Dizinde geçenlerden memnun olduktan sonra, dizinden git commit numaralı dizine değişiklikleri depodan taşıyın.Çoğu zaman

, ne istediğiniz tarihinin geçerli noktasında dosyayı İzlemeyi durdurmak git commit ardından basit dizisi git rm file olduğunu.

İlgili konular