He leído estos hilos:
- rsync --delete --files-from = list / dest / no elimina archivos no deseados
- ¿Eliminar archivos extraños del directorio de destino a través de rsync?
Pero, por lo que puedo decir (tal vez me estoy perdiendo algo), no cubren la siguiente pregunta:
¿Cómo solicita rsynccopiar archivos y eliminar aquellos en el lado receptor que no existen en el lado emisor, con excepciones? (por ejemplo, no elimine un repositorio mercurial .hgen el lado receptor, incluso si no hay un repositorio en el lado emisor).
¿Una posibilidad?
Tomando prestado de la respuesta de @Richard Holloway a continuación. Digamos que tengo la siguiente línea:
rsync -av --exclude=dont_delete_me --delete /sending/path /receiving/path
Por lo que yo entiendo, esta línea haría rsynceliminar todo en la ruta de recepción que no existe en la ruta de envío, excepto aquellas cosas que coinciden dont_delete_me. Mi pregunta ahora es: ¿rsync mantendría los archivos en el lado receptor que coinciden dont_delete_me incluso si nada en el lado emisor coincide dont_delete_me?
rsync -av --exclude=dont_delete_me --delete /sending/path /receiving/path¿norsynceliminaría todo en la ruta de recepción que no existe en la ruta de envío, excepto las cosas que coincidendont_delete_me? Lo más importante, ¿rsyncmantendría las cosas en el lado receptor igualadasdont_delete_meincluso si nada en el lado emisor coincidedont_delete_me? Si ese es el caso, creo que esa es la única línea que necesito, ¿verdad?