Estou tentando fazer com que meu sistema de integração contínua funcione do início ao fim no ambiente de desenvolvimento.
Infelizmente, o último passo após a publicação é copiar a pasta para um servidor externo que só posso acessar via FTP.
Eu gostaria de ter um serviço em execução que observe uma pasta local e, se ela mudar, atualiza o servidor FTP com essas alterações.
Não consigo encontrar algo para fazer isso no Windows.
Respostas:
Existe um cliente FTP WinSCP de código aberto gratuito , que possui todos os tipos de recursos para isso.
O comando que você está procurando está no menu "Comandos" e é chamado "Manter o diretório remoto atualizado" .
Há suporte a scripts disponíveis também através do
keepuptodate
comando .fonte
Experimente a versão gratuita do SyncBack . Ele não faz o monitoramento de pastas em tempo real, mas você pode agendá-lo para sincronizar em intervalos especificados. Defina para algo baixo como 1 minuto.
fonte
Solução gratuita e de código aberto baseada no git:
Use git-ftp para sincronização. Após a instalação e configuração de um repositório git local, você pode:
Agora você só precisa observar as alterações no sistema de arquivos, adicioná-las ao seu repositório git local e enviar o seu repositório usando o comando acima.
Vantagens:
Desvantagens:
Aqui está um exemplo para um arquivo em lotes que estou usando no Windows:
Observe que este é um exemplo interativo, mas você pode torná-lo não interativo armazenando a senha no arquivo em lotes.
fonte