SVN'deki sonuç kodları ne anlama geliyor?


300

SVN'deki sonuç kodları ne anlama geliyor? Hızlı bir referansa ihtiyacım var.

Yanıtlar:


518

Ek ayrıntılar için bkz. SVNBook: "Çalışan kopya dosyalarının ve dizinlerin durumu" .

Ortak durumlar:

U : Çalışma dosyası güncellendi

G : Repodaki değişiklikler otomatik olarak çalışma kopyasına birleştirildi

M : Çalışma kopyası değiştirildi

C : Bu dosya depodaki sürümle çakışıyor

? : Bu dosya sürüm kontrolü altında değil

! : Bu dosya sürüm kontrolü altında ancak eksik veya eksik

A : Bu dosya sürüm kontrolüne eklenecektir (işlemden sonra)

A + : Bu dosya taşınacak (tamamlandıktan sonra)

D : Bu dosya silinecek (işlemden sonra)

S : Bu, dosyanın veya dizinin, çalışan kopyanın geri kalanından (svn anahtarı kullanarak) bir şubeye değiştirildiğini gösterir.

I : Yok sayıldı

X : Harici tanım

~ : Tür değişti

R : Öğe, çalışma kopyanızda değiştirildi. Bu, dosyanın silinmek üzere zamanlandığı ve daha sonra aynı ada sahip yeni bir dosyanın onun yerine eklenmek üzere zamanlandığı anlamına gelir.

L : Öğe kilitli

E : Öğe, bir svn güncellemesi tarafından yaratıldığı gibi mevcuttu.


12
"R": Bu dosya değiştirildi
bildirim

8
Ne olmuş E? Tüm belgeler "Var" olduğunu söylüyor, bu yararlı değil.
Pops

2
+1, ancak "G: Repodaki değişiklikler otomatik olarak çalışma kopyasına birleştirildi" verilen kaynakta (artık?)
Julian

86

Ayrıca, ikinci sütundaki bir sonuç kodunun dosyanın özelliklerini ifade ettiğini unutmayın. Örneğin:

U   filename.1
 U  filename.2  
UU  filename.3

dosyaadı.1: dosya güncellendi
dosyaadı.2: dosyadaki bir özellik veya özellikler (svn: keywords gibi)
dosya adı güncellendi.3 : hem dosya hem de özellikleri güncellendi


36

Her zaman çalıştırarak bir liste alabilirsiniz:

svn status --help

19

"G" durumu hakkında bir şeyler söylemek istiyorum,

G: Repodaki değişiklikler otomatik olarak çalışma kopyasına birleştirildi

Yukarıdaki tanımın net olmadığını düşünüyorum, biraz karışıklık yaratabilir, çünkü tüm dosyalar otomatik olarak çalışma kopyasına birleştirilir, doğru olanı olmalıdır:

U = öğe sürümüne depolanan öğe (U)

G = öğenin yerel değişiklikleri depo ile değiştirildi (G)

C = depoyla ilişkilendirilen öğenin yerel değişiklikleri (C)

D = çalışma kopyasından silinmiş öğe (D)

A = çalışma kopyasına öğe (A) eklendi


'G' durumu hakkında. Değişikliklerin 2 kopyasını 2 farklı kullanıma alma dizininde aldım. Değişiklikleri bir ödeme-dizininden gerçekleştirdim ve diğer ödeme-dizinini güncellediğimde, yerel dizindeki değişikliklerin depo ile birleştirildiğini gösteren 'G' durumunu gösterdi.
GuruM

18

Ayrıca bir 'E' durumu var

E = Dosya güncelleme öncesinde mevcuttu

Bu, bir güncelleme gerçekleştirilerek oluşturulacak bir klasörü el ile oluşturduysanız olabilir.


13

Genellikle svn'yi IDE'im veya istemcim olan bir gui aracılığıyla kullanırım. Bu nedenle, komut satırına başvurmak zorunda kaldığımda kodları asla hatırlayamıyorum.

Bu hile sayfasını çok yardımcı buluyorum: Subversion Cheat Sheet


1
G durumunu listelemez.
Ark-kun

13

SVN durum sütunları

$ svn status
L index.html

Komutun çıktısı altı sütuna bölünmüştür, ancak bazen sütunlar boş olduğu için bu açık değildir. Belki de boş sütunları kesik çizgilerle belirtmek daha mantıklı olurdu, yol ls -lhiçbir şey yerine. Sonra, örneğin, L index.htmlgibi görünecektir --L--- index.htmlbariz Elimizdeki tek bilgi üçüncü sütunda kilitleme hakkında biridir yapar. Her neyse, bir kez daha mantıklı olmaya başladığını bildiğinizde.

SVN Durumu ilk sütunu: A, D, M, R, C, X, I,?,!, ~

İlk sütun, bir öğenin eklendiğini, silindiğini veya başka bir şekilde değiştirildiğini belirtir.

      Değişiklik yok.

 A    Öğe Ekleme için planlandı.

 D    Öğe Silme için planlandı.

 M    Öğe değiştirildi.

 R    Öğe, çalışma kopyanızda değiştirildi. Bu, dosyanın silinmek üzere zamanlandığı ve daha sonra aynı ada sahip yeni bir dosyanın onun yerine eklenmek üzere zamanlandığı anlamına gelir.

 C    Öğenin içeriği (özelliklerin aksine), depodan alınan güncellemelerle çakışıyor.

 X    Öğe, harici bir tanımla ilgilidir.

 I    Öğe yoksayılıyor (örn. Svn: ignore özelliğiyle).

 ?    Öğe sürüm kontrolü altında değil.

 !    Öğe eksik (örn. Svn kullanmadan taşıdınız veya sildiniz). Bu ayrıca bir dizinin eksik olduğunu gösterir (bir ödeme veya güncelleme kesintiye uğramıştır).

 ~    Öğe, bir tür nesne (dosya, dizin, bağlantı) olarak sürümlendirildi, ancak farklı türde bir nesne ile değiştirildi.

SVN Durumu ikinci sütunu: M, C

İkinci sütun, bir dosyanın veya dizinin özelliklerinin durumunu gösterir.

      Değişiklik yok.

 M    Bu öğenin özellikleri değiştirildi.

 C    Bu öğenin özellikleri, depodan alınan özellik güncellemeleriyle çakışıyor.

SVN Durumu üçüncü sütunu: L

Üçüncü sütun yalnızca çalışan kopya dizini kilitliyse doldurulur (normalde temizlemek için bir svn temizleme yeterli olmalıdır)

      Öğe kilitli değil.

 L    Öğe kilitli.

SVN Durumu dördüncü sütunu: +

Dördüncü sütun yalnızca öğe geçmişe eklenmek üzere planlanmışsa doldurulur.

      Taahhüt ile zamanlanmış bir tarih yok.

 +    Taahhüt ile planlanan tarih.

SVN Durumu beşinci sütun: S

Beşinci sütun yalnızca öğenin çalışma kopyası üst öğeye göre değiştirilirse doldurulur

      Öğe, üst dizininin bir alt öğesidir.

 S    Öğe değiştirildi.

SVN Durumu altıncı sütun: K, O, T, B

Altıncı sütun kilit bilgisi ile doldurulur.

      –Show-updates kullanıldığında, dosya kilitlenmez. –Show-updates kullanılmazsa, bu yalnızca dosyanın bu çalışan kopyada kilitli olmadığı anlamına gelir.

 K    Dosya bu çalışma kopyasında kilitli.

 O    Dosya başka bir kullanıcı tarafından veya çalışan başka bir kopyada kilitlenmiş. Bu yalnızca –show-updates kullanıldığında görünür.

 T    Dosya bu çalışan kopyada kilitlendi, ancak kilit çalındı ​​ve geçersiz. Dosya şu anda depoda kilitli. Bu yalnızca –show-updates kullanıldığında görünür. -

 B    Dosya bu çalışan kopyada kilitlendi, ancak kilit kırıldı ve geçersiz. Dosya artık kilitli değil Bu yalnızca –show-updates kullanıldığında görünür.

SVN Durumu yedinci sütunu: *

Güncel olmayan bilgiler yedinci sütunda görüntülenir (yalnızca –show-updates anahtarını geçerseniz). Bu, SVN'de yeni olan kişilerin komutun yapmasını bekledikleri bir şeydir, yalnızca dosyanın geçerli durumunu son güncellemede sunucudan aldığı bilgilerle karşılaştırdığının farkında değildir.

      Çalışma kopyanızdaki öğe güncel.

 *    Sunucuda öğenin daha yeni bir sürümü var.



7

Belgelere ( SVNBook ) erişiminiz olmadığında , (Linux) yazın:

svn help status | grep \'\?\'
svn help status | grep \'\!\'
svn help status | grep \'\YOUR_SYMBOL_HERE\'

veya ~ / .bashrc dosyanıza aşağıdaki işlevi ekleyin:

svncode() {
  symbol=$1
  [ $symbol ] &&  svn help status | grep \'$(echo $symbol)\' || \
  echo "usage: svncode <symbol>"
}

resim açıklamasını buraya girin


1
IMO, "aceleniz olduğunda" değil, "belgelere erişiminiz olmadığında" (örn. SVNBook).
bahrep

@bahrep teşekkürler, ona bakmanın yolu bu. Önerildiği gibi düzeltildi.
Alan
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.