Desenvolvo projetos pessoais em duas máquinas sem o uso de um servidor compartilhado ou uma conexão de rede entre as duas.
Algum sistema de controle de versão comum oferece suporte confiável ao uso de armazenamento portátil (como um dispositivo flash USB) como repositório compartilhado?
version-control
billpg
fonte
fonte
Respostas:
Use um DVCS como Git ou Mercurial .
Os sistemas de controle de versão distribuído não possuem um servidor central compartilhado.
Com um DVCS, cada cópia de um repositório contém o histórico completo - tudo. Isso significa que, quando usadas em uma chave USB, quaisquer alterações feitas são feitas no repositório na chave USB e, quando movidas entre computadores, manterão esse histórico.
fonte
Além do GIT, o Mercurial etc sugerido acima, também dê uma olhada no Fossil - Ele tem as vantagens de que os binários de tempo de execução são pequenos (1Meg ou mais para Windows e Linux), instalação portátil e zero. Portanto, diferentemente dos outros (que eu saiba), ele pode ser colocado no dispositivo de armazenamento e executado em qualquer máquina na qual o armazenamento esteja conectado, sem a necessidade de instalar o aplicativo na máquina. Ele inclui um Wiki e um sistema de rastreamento de alterações / defeitos no repositório. Ele também possui uma interface gráfica.
Eu não o usei a sério (eu uso principalmente o GIT), mas fiquei impressionado com sua abordagem leve e a inclusão de um Wiki e rastreador de defeitos o torna ideal para pequenos projetos. Minha única preocupação era que alguns dos recursos mais poderosos do GIT não fossem possíveis e, diferentemente do GIT, a comunidade de usuários não é tão grande que é fácil encontrar respostas para as perguntas.
fonte
Usar um DCVS provavelmente é uma boa ideia, mas não é a única opção.
Eu tenho um pequeno repositório CVS em um pen drive USB. Quando quero acessá-lo, só preciso usar
cvs -d <path>
ou definir$CVSROOT
o caminho da raiz do repositório (o que, obviamente, exige que o pen drive seja montado no sistema).Se você já está acostumado a usar o CVS, isso deve ser viável. O mesmo deve se aplicar ao SVN. Significa apenas que seu repositório central está no pen drive e nem sempre é visível.
Existem argumentos para usar um DCVS em vez do CVS em geral. Não acho que esses argumentos sejam particularmente afetados pelo fato de o repositório central estar em um pen drive ou em outro lugar. Por exemplo, você poderia facilmente criar um repositório git no pen drive.
fonte
Como complemento às outras respostas:
Enquanto um DVCS se encaixa muito bem nesse problema, você também pode usar o Subversion tecnicamente, se sentir-se mais confortável com ele. O Subversion pode usar um diretório local em vez de um servidor central. Você pode colocar isso em um pen drive e usá-lo.
A desvantagem, comparada a um DVCS, seria que você só pode trabalhar com o Subversion (por exemplo, confirmar, visualizar logs etc.) enquanto o pen drive estiver conectado. Além disso, deve sempre ser o mesmo pen drive (ou pelo menos um até a data), porque com o Subversion você não deve usar mais de um repositório (essa é a parte não distribuída). Portanto, se você esquecer seu pen drive, não poderá usá-lo, ao contrário do Git ou do Mercurial.
Nota:
Como explicado acima, e nos comentários, um DVCS é realmente um ajuste melhor para o seu problema. Eu apenas mencionei o Subversion por questões de integridade, e caso você tenha algum motivo especial para usar o Subversion.
fonte
svn
(ou mesmo Cvs) poderia pesar a favor do uso dessa solução, mas, no interesse da divulgação completa, as desvantagens dessa abordagem também devem ser mencionadas. Sinta-se livre para editar os pontos do meu comentário na sua resposta. Se o fizer, ficaria feliz em limpar (excluir) meus comentários. * 8 ')