2013-03-05 11 views
5

Git-scm sayfasında, Recording Changes to a Repository'da gösterilen şemada, bir untracked dosyası eklendiğinde, unmodified durumuna hareket ettiğini gösterir.Bir kişi, programlanmamış bir dosya eklediğinde, hemen aşamalı olarak gitmiyor mu?

enter image description here

Bu doğru mu? Eğer $ git add myFile ve sonra $ git status çalıştırırsam, myFile'un işlenmeye hazır olduğunu gösterir, (bu, başlangıç ​​seviyemin perspektifinden) o sayfadaki şemaya bakarken ani görünmez görünüyor.

Diyagram yanlış mı, eksik mi, yoksa diyagramı yanlış anlamış mıyım? Eğer ikincisiyse, biri ne anlama geldiğini açıklayabilirdi.

cevap

4

git add, daha önce izlenmeyen yeni bir dosyaya bastığınızda, hemen sahneye yerleştirilir (görüntüdeki mavi sahne). Diyagram bu açıdan yanıltıcıdır, ancak bu sayfadaki metin Tracking New Files paragrafının çok altındadır. Açıkça bir dosyası ve sürümü aynı dosyanın arasındaki farkı çağırmaz çünkü

+0

diyagram tartışmasız geçerli: dönüşümleri yapmak için hiçbir komutlar vardır

git add [filename] 

: Bu yapılır yanıltıcı; 'dosyayı ekle' okunun 'izlenmemesi' ile 'aşamalı' arasında gitmesi gerekir. AFAIK, eğer 'git rm dosyası' ise, dosya dizinden kaldırılır ve hazırlama alanında silinmiş olarak işaretlenir; basitçe takip edilmez. –

+1

"Dosyaya ekle" okunun doğrudan 'git add' anlamına gelmediğini düşünüyorum. Ben sadece dosyanın bir durumdan diğerine nasıl taşındığını göstermeye çalıştığını düşünüyorum ... Neyse, yeterince açık değil – iberbeu

+0

Herkese teşekkürler, laboratuarımın geri kalanına gitmek için bir intro öğretiyorum, ama yeni başlayan olarak, Kendimden emin olmadığım bir şey öğretmemek konusunda dikkatli olmaya çalışıyorum. – ataulm

3

grafik yanıltıcı.

Eğer git add bir dosyaya, Evreleme Alan için çalışma dizininde güncel sürümünü bunun ekliyoruz. Mevcut sürüm şu anda Staged olarak kabul edilmek üzere hazırdır. Çalışma dizini dosya içeriğiniz Aşamalı sürümünkiyle aynı olduğundan, dosya Değiştirilmemiş olarak kabul edilir. Eğer bu anda işlemiş olsaydınız, repo'ya kontrol edilen versiyon, dosyanın çalışma dizininizde nasıl göründüğü ile eşleşecek olan Staged versiyonudur. Dosyayı ekledikten hemen sonra yapmak yerine, çalışma dizininizdeki dosyada daha fazla değişiklik yapmanız gerektiğini varsayalım. Şimdi çalışma dizininde sürümü Modifiye, önceki Sahnelenen sürümü ve: Şimdi, aslında tür-of iki versiyonunu dosyanın var. Bu bu anında işlem yapacak olsaydınız, önceki Staged sürümü kontrol edilir, bu sizin çalışma dizininizdekinden farklıdır.

3

Sorunun cevabı evet. İzlenmemiş dosyayı izlerken, düzenlenmemiş, sahnelenir.

  • izlenmeyen
  • değiştirilmemiş
  • modifiye
sahnelenen: Benim için

bu şemadaki ile en zor sorun, o kadar kategorize dosyalarında hiçbir mantıklı oldu

Doğru kategoriler benim görüşüme göre:

  • izlenmeyen
  • değiştirilmemiş
  • unstaged
önemli sıfatlar pembe renk ile işaretlenmiştir

correct categories for state of the file

düzenledi. Gri olanlar gereksiz. Söylemek zorunda değilsiniz: "dosya izlenir, değiştirilir ve düzenlenir". Her aşamalı dosya değiştirildiği ve izlendiği için "dosya düzenlenir" demek yeterlidir.

Bunu farkettikten sonra, anlaşılmamış dosyanın yalnızca aşamalı duruma aktarılabileceğini anlamak kolaydır.

  • izlenmeyen dosyasını => değiştirilmemiş dosya
  • izlenmeyen dosya => unstaged dosya
İlgili konular