2011-03-23 7 views
5

Her çalışma için web sitesindeki tüm dosyaları üreten statik bir web sitesi üreticisi kullanıyorum. Dosyaları oluşturduktan sonra içeriği kopyalamak için rsync kullanıyorum.rsync, değişmeyen dosyaların zaman damgalarını nasıl korur?

Daha iyi önbelleğe almayı sağlamak için, rsync'in değişmeyen hedefteki dosyaların zaman damgasını değiştirmesini istemiyorum. Mümkün mü?

DÜZENLEME: Bunu yapmak için, tüm kaynak dosyaların zaman damgaları daima hedef dosyaların zaman damgalarından daha yenidir.

cevap

9

-c seçeneği istediğimi yapıyor gibi görünüyor. Benim durumumda performans cezası sorun değil.

+0

-t sizin durumunuzda daha iyi olacak – Pungs

+0

Bunu düşünmüyorum, çünkü kaynak dosyaların zaman damgaları, dosyaların içerikleri değişmemiş olsa bile, hedef dosyalardan daha yeni. –

+2

-c seçeneği çalışır. Yine de dikkate alınması gereken bir şey: eğer değişiklik zamanlarının değişmesini istemiyorsanız, -a seçeneğini, sessizce çağırdığı için -t seçeneğini kullanın; bu, "değişiklik zamanlarını koru" anlamına gelir, yani "değişiklik zamanlarının üzerine yaz" Yerel dosyaların değişiklik zamanları ile uzak dosyaları. " – ishmael

0

-t ve -E bayraklarını denediniz mi?

DÜZENLEME: Uh ... veya dosyalar değişmemiş olsa bile, web sitenizi her yeniden oluşturduğunuzda kaynak dosyalarının zaman damgası değişti mi?

+0

Evet, kaynak dosya zaman damgası her zaman "şimdi" olarak değiştirilir. –

+0

Bu durumda, sadece (sadece aynı boyutta olduklarını varsayarak) yeni dosyaları atlayabilmek için - yalnızca - kullanmayı deneyin, bunun biraz tehlikeli olmasına rağmen, istenmeyen sonuçlar doğurabilir. -c ile birlikte kullanılması biraz daha iyi, ancak yavaş. – MarcB