2009-03-11 31 views
3

Kontrol kodumda olmayan bir SVN sunucusundan kaynak kodu kontrol ettim. Yeni güncellemeler olduğunda ne olduğunu bilmek istiyorum ve bunları modifikasyon, yeni eklemeler vb. Olarak sınıflandırmak istiyorum. Googling, aradığım komutun "svn status --show-updates" olduğuna inanmamı sağladı. Ancak, depo kökünde çalıştırdığımda, A/M işaretlerini değil, yalnızca durum sütununda * verir. Bunu nasıl alacağınıza dair bir fikrin var mı? TIA.SVN güncelleştirmeleri özeti

+0

Küçük dünya: . Sanırım bu soru, programlama ile ilgili olarak "yeterince yakın" kabul edilir. :) – unwind

+0

gevşeyin, HN'den birisi bana burada hem Q'leri yollamamı önerdi. –

cevap

9

İş için güzel bir araç CommitMonitor.

+0

Stefan, maalesef buna linux üzerinde ihtiyacım var. –

+0

Üzgünüm, ancak CommitMonitor sadece Windows üzerinde çalışıyor. Ve Linux için benzer bir araç var mı bilmiyorum - belki başka biri bilir ... – Stefan

2

svn status, çalışma kopyanızın, teslim aldığınız depo kopyaya göre herhangi bir değişiklik yapıp yapmadığını gösterir. --show güncelleştirmeleri bayrağı, güncelleştirmelerin sunucuda bulunup bulunmadığını gösterir ve * bunun olduğu anlamına gelir.

Düzeltme: Tamam, eğer gui'ye gidebilirseniz, tutsaklıkta yıkıcı kullanırım, ancak komut satırında kalmak için buna ne dersiniz? İstediğiniz şey, bir birleşimin kurumasına benzer ... BAŞLAMAK güncellendiğinde, A, D, M'nin ne olacağını görmek istediğinizde. Yani bu deneyin:

svn merge --dry-run -r BASE:HEAD 
+0

John, tam olarak bilmek istediğim, yani, depoda yeni veya değiştirilmiş dosyalar varsa. –

+0

Tamam, ihtiyacın olanı anladım. birleştirme dryrun –

1
svn status --show-updates 

son güncellemeden bu yana depoda değişti her dosyanın önüne * koyacağız.

kullanarak çalışma kopya tabanı (son güncelleme) ve geçerli depo kafa arasındaki ayrıntılı değişiklikleri görebilirsiniz:

svn log --revision BASE:HEAD 

ekleme seçeneği --verbose M ile de başa tüm değiştirilmiş dosyaları, A vb ekleme listeler option --quiet taahhüt mesajlarını gizler.

Güncelleme:

svn diff --summarize --revision BASE:HEAD 

tek listede çöktü aralıkta yapılacak değişikliklerde vs M, A bilgisiyle verilen tüm değiştirilmiş dosyaları listeler. Sanırım aradığın şey bu.

-1

eSvn ürününü deneyin. Dosya/dizinlerin durumunu gerçek zamanlı olarak gösterme özelliğine sahiptir.