Przeczytałem te wątki:
- rsync --delete --files-from = list / dest / nie usuwa niechcianych plików
- Usunąć zbędne pliki z katalogu docelowego przez rsync?
Ale, o ile mogę powiedzieć (może coś mi brakuje), nie obejmują one następującego pytania:
Jak poprosić rsync
o skopiowanie plików i usunięcie tych po stronie odbiorczej, które nie istnieją po stronie wysyłającej, z wyjątkami? (np. nie usuwaj repozytorium rtęci .hg
po stronie odbierającej, nawet jeśli nie ma repozytorium po stronie wysyłającej).
Jedna możliwość?
Pożyczanie od odpowiedzi @Richard Holloway poniżej. Powiedz, że mam następujący wiersz:
rsync -av --exclude=dont_delete_me --delete /sending/path /receiving/path
O ile rozumiem, ten wiersz spowodowałby rsync
usunięcie wszystkiego na ścieżce odbiorczej, która nie istnieje na ścieżce wysyłającej, z wyjątkiem tych pasujących dont_delete_me
. Moje pytanie brzmi: czy rsync zachowa pliki po stronie odbierającej, które są dopasowane, dont_delete_me
nawet jeśli nic po stronie wysyłającej nie pasuje dont_delete_me
?
rsync -av --exclude=dont_delete_me --delete /sending/path /receiving/path
czy nie spowodowałoby torsync
usunięcia wszystkiego na ścieżce odbiorczej, która nie istnieje na ścieżce wysyłającej, z wyjątkiem rzeczy pasującychdont_delete_me
? Co najważniejsze, czyrsync
rzeczy po stronie odbiorcy byłyby dopasowane,dont_delete_me
nawet jeśli nic po stronie wysyłającej nie pasujedont_delete_me
? Jeśli tak jest, myślę, że to jedyna linia, której potrzebuję, prawda?