renefks
(usa Fedora)
Enviado em 23/08/2016 - 11:41h
Opa Pessoal,
Se a meu post estiver no lugar errado, por favor me avisem.
Tenho utilizado o rsync para fazer backups em HD externo a algum tempo e estou muito satisfeito. Inclusive fui motivado pelo excelente artigo:
https://www.vivaolinux.com.br/artigo/Transferindo-arquivos-com-o-rsync
No entanto tenho um problema aqui que o rsync pode ser a solução perfeita. Só que como isso é uma coisa importante que não pode conter erros queria perguntar antes pra vocês.
O problema é o seguinte. Existe um código fonte que está em um repositório git. Eu tenho que baixar esse código, testar, fazer algumas modificações, testar de novo se está tudo funcionando e atualizar no repositório git. O problema é que o servidor que o código será testado não pode acessar diretamente o repositório (Eu não sou o admin então mudar isso não é uma opção). Então o que eu pensei em fazer é clonar o repositório git do meu computador pessoal, usar o rsync para copiar no servidor, fazer os testes e modificações lá, e depois utilizar o rsync para atualizar os arquivos no meu computador pessoal. Assim posso atualizar o repositório git com o meu computador pessoal. (Existe alguma falha aqui?)
A minha grande dúvida é quando eu atualizar os arquivos no meu computador pessoal, todos os executáveis vão ser copiados para o meu computador, e isso com certeza não é o que eu quero. Eu queria atualizar apenas os arquivos que já estão no meu computador. Acredito que se eu usar a linha de comando:
rsync -avz usuario@servidor/home/usuario/codigo /home/usuario/codigo_fonte
O rsync irá copiar todos os executáveis junto. O rsync possui uma opção que ele sincroniza apenas os arquivos já existentes?
Pessoal, estou procurando a resposta para isso mas nada que eu encontro é claro sobre isso. Vou continuar procurando mas queria saber o opinião de vocês também.
Obrigado a todos
Edição 1:
Pessoal, no próprio manual do rsync eu encontrei a opção --existing
--existing, --ignore-non-existing
This tells rsync to skip creating files (including directories)
that do not exist yet on the destination. If this option is
combined with the --ignore-existing option, no files will be
updated (which can be useful if all you want to do is delete
extraneous files).
Só não vou marcar como resilvido ainda porque não testei. Se alguém tiver alguma outra opção ou achar que não vai dar certo por favor me avisem.
Abraços