2013-03-21 24 views
14

Perforce için yeni ve dürüst olmak gerekirse, bundan nefret ediyorum. C: \ workspaces \ perforce dizininde yaklaşık 20 dosyam vardı ve hepsini seçtim ve delete tuşuna bastım. Onları silmeden önce hepsi kontrol edildi. Onları nasıl geri alacağımı anlamaya çalışarak saçlarımı dışarı çekiyorum (Sooooo sorgusuzdur) ama benim gibi bir n00b'ye giden hiçbir şey yok.
En son düzeltmeleri Scance'nin dizinine nasıl geri alabilirim?Dizindeki tüm dosyaları sildim. Onları nasıl geri alabilirim?

cevap

18

Bir kuvvet eşitlemesi yapmanız gerekir. P4V GUI olarak

$> p4 sync -f 

: Komut satırında

  1. Seç güncellemek için dizine sağ tıklayın, iletişim kutusunda
  2. 'Revizyon al' 'Çalışmaya zorla' kontrol edin
  3. 'Revizyona Al' öğesini tıklayın
9

Performans sunucusu, son çektiğiniz dosyaları izler. Bu, bir sonraki sync'un sadece tüm dosyalar yerine bir kez daha son senkronizasyondan beri değişiklik gösteren dosyaları getirmesi için yapılır.

Bu davranışı geçersiz kılmak için -f seçeneğini kullanmanız gerekir.

-f bayrak kuvvetleri istemci zaten dosyayı olsa bile resenkronizasyon ve herhangi yazılabilir dosyalar üzerine

. Bu bayrak, açık dosyaları etkilemiyor.

komut satırı istemcisi kullanıyorsanız

, size eşitlemek istediğiniz dizinden bu komutu çalıştırabilirsiniz:

Ayrıca opened dosyaların listesini kontrol etmek isteyebilirsiniz
p4 sync -f ... 

, sync -f bu dosyalara karşılık gelen değişiklikleri getirmeyecektir (bunları silseniz bile).

Bu komut tüm açılmış dosyaları listelemek olmalıdır: Eğer siz de silinmiş olan yukarıdaki listede sıralanan tüm dosyaları varsa

p4 opened ... 

, sen sync -f çalıştırmadan önce bunları geri gerekir.

p4 revert <FILE1> <FILE2> 
p4 sync -f ... 

Eğer p4v kullanıyorsanız, size dwinkle tarafından bahsedilen adımları izleyebilirsiniz:

1. Right click the folder in your workspace 
2. Choose `Get Revision` in the context menu. 
3. Choose `Get Latest revision` 
4. Check `Force Operation (replace file even if you already have the revision specified) 
5. Click on `Get Revision` button to fetch the files. 

p4v kullanılarak açılan dosyaların listesine bakmak için, listenize bakmak gerekir beklemede bekleyenler. Dosyaları herhangi bir spermik değişiklik uzmanına koymadıysanız, default değişiklik listesine bakmalısınız.Daha önce silmiş olduğunuz dosyaları görüp sağ tıklayın ve Revert'u seçin.

1

Alternatif: p4 revert //...

+0

Bunun GUI sürümü benim için en iyi çözümdü. Ebeveyn versiyonunu sağ tıklattım ve silme çizgilerini bir çizik değiştiriciye dönüştürdüm, sonra bunu değişime uğradı. –

4

Eğer dosyanız varsa

p4 reconcile teslim ve sonra silindi. En son zorlanmadan önce (p4 sync -f) klasörü geri almalısınız (p4 -a // ...).

2

eski müşteri hakkında önemli değilse, bir çözüm yeni bir müşteri aşağı çekmek için olacaktır: istemci aynı ada sahip olmak istiyorsanız

p4 newclient 
p4 sync 

, bir zoraki eşitleme yapabilir diğerleri de söylediğim gibi:

p4 sync -f 

istemci aynı ada sahip olmak istiyorsanız, ancak dizin artık p4 çalışma olarak kabul edilmektedir, istemci silin ve yeniden oluşturmanız gerekecektir. Benim durumumda

p4 -c <client_name> client -d <client_name> 
p4 newclient 
0

Her şeyi denedim ve ben dönmek benim tüm dosyaları alamadım, bu yüzden onları silme çalıştı ve sonra geri hepsini alamadım. Bilgisayarımı yeniden başlattım ve çevrimiçi olarak çok sayıda çözüm buldum. Sonunda sorunum, aşağıdakilerden biri ya da tümü tarafından çözüldü: En son P4V uygulamasına geçme, uygulamayı yükseltilmiş izinlerle çalıştırma ve zorlamadan sonra yemeğe devam etme.

Bir günün yarısını harcadıysanız. Yukarıdakileri denemek isteyebilirsiniz.

İlgili konular