Eu uso o OS X para desenvolvimento e quero enviar alterações para o servidor dev em cada ⌘ + S.
Quando faço check-out de uma ramificação diferente, desejo que a pasta local seja atualizada adequadamente.
Então achei que precisava de uma solução de sincronização bidirecional automática .
Meu editor de escolha é Sublime Text (o que é incrível, você deve conferir totalmente).
Comecei minha busca com o plugin Sublime Text SFTP por Will Bond, mas achei instável e lento.
Então ataquei o problema com o Panic Transmit .
É incrivelmente bonito. No entanto, também não me ajudou.
A transmissão oferece duas opções:
- sincronização bidirecional entre a pasta local e remota;
- monte o SFTP no sistema de arquivos.
Infelizmente, sua sincronização bidirecional é manual e precisa ser ativada pressionando um botão.
(Eu provavelmente poderia contornar isso escrevendo um AppleScript inteligente - mas não sei.)
A montagem do SFTP é excelente - infelizmente, possui grandes desvantagens: a pesquisa de arquivos é previsivelmente lenta e parece não haver maneira de informar ao Transmit que os arquivos foram alterados no servidor . Você precisa desmontar e montar novamente para ver as alterações remotas. Isso torna impossível trabalhar com os ramos.
Estou realmente confuso agora e não sinto falta de duas horas em uma solução errada. Estou aberto a sugestões de uma ferramenta para melhorar meu fluxo de trabalho.
Aqui está o que eu encontrei até agora. Não tenho certeza se algum deles pode realmente assistir a pasta remota em busca de alterações.
- escrevendo AppleScript para sincronizar Transmitir nos dois sentidos a cada dez segundos;
- usando
rsync
e ações de pasta ; - usando
rsync
eFSEvent
; - usando DoubleDown (código aberto);
- compra FolderWatch (comercial);
- fazendo outra coisa.
Observe que estou procurando uma solução que funcione imediatamente . Não quero uma ferramenta que não possa manipular arquivos ou pastas novos / alterados / excluídos sem mexer no código-fonte.
Respostas:
Pergunta antiga, mas aqui está a minha resposta:
Eu uso uma ferramenta Unix chamada Unison . Essa é uma ferramenta de linha de comando que permite a sincronização bidirecional.
O bom é que é altamente configurável: ignore determinados nomes de arquivos, diretórios, sincronize várias pastas, que lado vence em um conflito, muitas outras coisas.
O ruim é que você não deve ter medo da linha de comando e o servidor e o cliente precisam ter o Unison instalado; ambas as instalações precisam ter a mesma versão e construídas com a mesma versão do OCAML.
Mas eu tenho usado várias vezes por hora todos os dias de trabalho no ano passado e tem sido incrível - é muito rápido, muito fácil de disparar a partir da linha de comando.
fonte
Você já pensou em usar algo como o Git? Hospedando os arquivos no GitHub ou configurando seu próprio servidor git.
Isso deve ajudar: /programming/455698/best-visual-client-for-git-on-mac-os-x
fonte
O AppleScript a seguir permite sincronizar uma pasta remota com uma pasta local usando o Transmit
https://github.com/lmullen/AppleScript---Transmit---sync-local-directory-to-FTP-directory
Infelizmente, parece o padrão para sincronizar a pasta remota com o local, e o que eu quero é o oposto: baixar arquivos atualizados do servidor para o meu computador.
fonte
Uma pergunta muito antiga, mas talvez minha própria resposta ajude. Também usei o SublimeText (acho que ainda o tenho em algum lugar) porque gosto da maneira como ele abre arquivos tão rapidamente - especialmente em Macs mais antigos. No entanto, para um trabalho mais sério, um IDE melhor definitivamente atenderia melhor aos seus requisitos.
Como você está bem em adquirir software novo / diferente, experimente o Panic's Coda. Você já gostou do Transmit, que também é um produto da Panic. O Coda fica entre o SublimeText e IDEs super sofisticados, como, por exemplo, o Eclipse, e pode fazer praticamente o que você deseja - manter as pastas sincronizadas entre o computador local e o servidor remoto, publicar e sincronizar sob demanda e, além disso, manter o seu dados locais também sincronizados com o GitHub, o Google Code ou qualquer outro sistema de controle de versão popular baseado no Git ou SVN.
O Coda sofreu um pouco com o desempenho no passado (ou seja, na renderização do código em cores durante a rolagem rápida), mas as versões atuais foram completamente renovadas e são quase tão rápidas quanto o SublimeText. Também é baseado em plugins - o plug-in de validação PHP / JavaScript / HTML é obrigatório, pois os recursos de validação de código interno da Coda não são excelentes em comparação. Hoje em dia, você pode usar as configurações do servidor Transmit no Coda e vice-versa, bem como em qualquer dispositivo iOS que você possua, por meio de aplicativos inteligentes que sincronizam as configurações entre si.
Isso quase soa como propaganda para o Panic ... Eu não teria mencionado Coda se você não tivesse mencionado Transmit!
fonte