Por que -r não está funcionando para rsync no Windows?

Por que -r não está funcionando para rsync no Windows?

Estou executando isso no meu prompt de comando: rsync -rltz --executability -C --filter=':- .gitignore' -e "ssh -i /cygdrive/c/Users/dstein/.ssh/id_rsa" myfolder/ [email protected]:/path/to/place

Eu tenho meu PATHambiente apontando para cygwin/binque eu possa usar rsyncsem estar no cygwin, o que estava causando uma série de outros problemas.

Finalmente consegui que funcionasse, então se eu alterar um arquivo myfolderele será carregado para place. No entanto, se eu editar quaisquer arquivos aninhados no myfoldercomando acima, não funcionará para eles.

EDITAR Acontece que não é a profundidade, mas esta pasta específica com o nome coreTem as mesmas permissões que todas as outras pastas que estão sincronizando bem.

Responder1

Parece que o seu problema está na -Cbandeira. O sinalizador rsyncde -Cé a regra de exclusão do cvs. Ele ignora automaticamente os arquivos que correspondem às regras internas do CVS para exclusão de arquivos.

Essas exclusões são, de man rsync(1):

RCS SCCS CVS CVS.adm RCSLOG cvslog.* tags TAGS .make.state .nse_depinfo *~ #* .#*  ,*  _$*  *$
*.old *.bak *.BAK *.orig *.rej .del-* *.a *.olb *.o *.obj *.so *.exe *.Z *.elc *.ln core 
.svn/ .git/ .hg/ .bzr/

A regra com a qual seu diretório entrou em conflito foi a coredo final da linha 2.

Responder2

Deixe-me excluir tudo e inserir conforme cruzamos a postagem. Se você remover o final / de myfolder/ todo o diretório será copiado. Mas você terá myfolder dentro do lugar. Não entendo por que -r não está funcionando.

Insira -vv para obter mais informações.

informação relacionada