Atualmente, a base de código do projeto em que estou trabalhando está remotamente em um servidor da empresa. e tem que ficar assim. também o git
repositório remoto não pode ser tornado público.
Minha configuração atual é:
- Conecte-se ao
VPN
- executar
sshfs
para montar uma cópia do código - começar a trabalhar no código
- quando terminar:
ssh
para o servidor remoto e executegit
comandos lá
O problema com isso é que a VPN cai de tempos em tempos, então minha sshfs
boca quebra e meu IDE congela. o que faço é reconectar manualmente a VPN, executar sshfs
novamente e voltar ao trabalho.
Mas fica irritante com a VPN
queda mais frequente.
Então, eu me pergunto se há alguma configuração para sshfs
algum tipo de cache, que me permita trabalhar e só sincronize as alterações quando a VPN voltar.
Isso pode não fazer sentido, pois se o driver remoto não estiver disponível, não há nada para escrever. Então, que tal uma configuração diferente que use algum watch
tipo de coisa e rsync
mova as alterações de maneira bidirecional (quando eu salvo um arquivo ou quando o faço git pull
)
Não posso simplesmente clonar o git, porque não consigo reproduzir todo o ambiente para trabalhar 'localmente' (banco de dados e outras coisas)
o código deve estar em seus servidores, para que eu possa testar / ver meu trabalho, tenho que acessar uma URL, que é minha caixa de areia. Não consigo pressionar cada vez que quero ver minhas alterações.
git
o caminho são? Clone o repositório e trabalhe remotamente.Respostas:
O zecrazytux está certo - Por que você não usa
git
da maneira que deveria: clonando o repositório, trabalhando remotamente e enviando as alterações de volta ao mestre?Não vejo razão para que você "não possa" fazer
git push
seu trabalho toda vez que quiser ver suas alterações (de preferência para um ramo de desenvolvimento que depois será mesclado quando testado e comprovado) - muitas pessoas fazem isso. Você pode até usar umpost-receive
gancho para implantar suas alterações no ambiente se quiser automatizar essa parte das coisas.(Você obviamente não quer fazer isso , mas não deu nenhuma razão para que eu rejeite a premissa do seu problema.)
Francamente, não há nada que você possa fazer para tornar uma conexão de rede não confiável "tolerável" (ESPECIALMENTE se você estiver tentando montar sistemas de arquivos de rede) - você pode trabalhar remotamente conforme descrito acima, fazer o SSH no sistema e trabalhar diretamente nele (
screen
é o seu amigo aqui) ou investigue e corrija a instabilidade da rede subjacente.Tentar fazer outra coisa para "torná-lo tolerável" é um exercício de futilidade (pense em "guarda-chuva de coquetel em um furacão").
fonte
we have redmine and each commit should have a specific format
<- Então, quando você mescla o formato da ramificação de desenvolvimento, o commit da mescla da maneira que o redmine espera.git
é flexível assim :-)screen
para quando as matrizes de conexão"Estou usando essas opções sshfs para minimizar a latência:
Possui o sinalizador de reconexão, todas as soluções alternativas do sshfs, usando cache automático e chiper arcfour.
Você pode ler sobre essas opções no manual do sshfs, encontrei as opções mais rápidas do sshfs pelo menos para minha configuração.
ETA: Mais sobre o desempenho do sshfs leia aqui: desempenho do sshfs
fonte