Respuestas:
Se aplica la primera regla de coincidencia, por lo tanto, incluya .htaccess
antes de excluir .*
.
rsync -avP --include=".htaccess" --exclude=".*" . user@server:/dir
Esto copia .htaccess
en todos los niveles. No sé con qué pretendías ./.htaccess
; si desea hacer coincidir un archivo solo en la raíz de la copia, inicie el patrón con a /
. Si solo desea la raíz .htaccess
, no puede simplemente usarla --include='/.htaccess' --exclude='.*'
, porque la regla no enraizada realmente tiene prioridad aquí, debe hacer algo más complicado:
rsync -avP --exclude='/*/**/.htaccess' --include='.htaccess' --exclude=".*" . user@server:/dir
Lecturas adicionales: principios básicos para filtros rsync .
--include
primero, pero el "./" frente al "./.htaccess" era lo que lo estaba matando.
.htaccess
archivo, tendrá que --include='.*/'
(creo) antes de la final --exclude
, vea también aquí