Qual software de controle de revisão usar no Dropbox pessoal? [fechadas]

9

Desejo configurar um repositório de sincronização que seja semelhante ao Dropbox.

Objetivos / Requisitos:

  1. Grátis (código aberto muito preferível)
  2. Host Linux (provavelmente Ubuntu)
  3. Clientes Windows / Mac / Linux
  4. Potencial para vários usuários com acesso limitado (opcional)
  5. De preferência fácil, não precisa necessariamente ser automático
  6. Controle de revisão muito preferível

Basicamente, desejo poder usar vários computadores, possíveis com sistemas operacionais diferentes, e acessar, usar e sincronizar arquivos em todos eles. Também quero ter uma cópia local do repositório para quando não estiver conectado à rede (como se estivesse trabalhando em um laptop, desejo manter um repositório local para manter a revisão e mesclar posteriormente com o repositório "master" )

Por exemplo, estou editando algumas fotos no meu laptop durante o dia fora da minha rede, mas quando chego em casa, gostaria de sincronizar as alterações, incluindo alterações incrementais, com minha área de trabalho em casa.

Eu também gostaria que meus colegas de quarto pudessem acessar e usar esse repositório também, mas limitar o acesso a determinados arquivos. Por exemplo, convém usar isso para fazer backup de registros financeiros, mas não gostaria que eles tivessem acesso a esses arquivos.

Sou programador e familiarizado com o SVN, mas sei que não seria o mais apropriado, pois ele não lida bem com os binários e não mantém um repositório local. Sei que existem melhores opções, mas não as conheço bem o suficiente para escolher a melhor.

wag2639
fonte
este deve ser um wiki da comunidade?
wag2639
11
Não, se você me perguntar, esta é apenas uma questão de software-rec que é improvável a ser respondida facilmente
Ivo Flipse
Eu estava pensando em algo mercurial ou algo assim, mas não sei as diferenças entre eles.
wag2639
11
SVN não lida bem com arquivos binários? Notícias para mim, é para isso que eu uso!
Fake Name

Respostas:

5

Para o subversion, você pode ter um repositório local - basta criar um localmente e pronto. Você pode sincronizar com um repositório remoto regularmente usando svnsync. Ou faça o contrário, use um repositório remoto e sincronize localmente (como eu faço para backups).

O Svn lida bem com os binários, ou pelo menos como com qualquer outro SCM. O problema dos binários é que eles são difíceis de diferenciar, isso não ocorre com o svn, apenas uma propriedade dos binários.

Git ou Mercurial (ou Bazaar ) parecem mais apropriados para suas necessidades, pois são SCMs distribuídos, na medida em que você opera em um repositório local o tempo todo e depois envia as alterações para um repositório remoto. O Mercurial é provavelmente o melhor para o Windows, pois você possui boas ferramentas de GUI; Bazar é um desenvolvido pela Canonical e Git por Linus. É sobre todas as diferenças entre eles: alguém se importa :) Há comparações na web - além de o git não ser o Windows nativo, o Mercurial provavelmente é melhor, pois suporta mais um 'o que você tem é o que os usuários remotos têm', enquanto o Git é mais um 'o que os usuários remotos têm é o que você permite que eles tenham' o que exigirá mais esforço de você, considerando seus requisitos (é claro que ambos podem compartilhar todos ou subconjuntos, mas é mais fácil para o Mercurial ter um subconjunto restrito do que para o Git compartilhar tudo)

Se você quiser usar 'both', poderá ter o git-svn ou o SVK, que adiciona funcionalidade distribuída ao SVN.

gbjbaanb
fonte
7

Eu sugeriria git. Basta configurar repositórios diferentes para seus dados financeiros e dados 'compartilhados'. O acesso é concedido via ssh.

sml
fonte
Sim, git é a solução.
Alexanderpas
Por último, verifiquei que o git não tinha suporte para janelas de descida.
N
2
Quando foi a última vez? Antes da última vez (mais de um ano atrás), eu teria dito o mesmo, mas agora existe um cliente decente TortoiseGit e o msysgit está bem, às vezes hickups um pouco. Mas ao longo dos últimos meses era bastante estável e utilizável
jdehaan
@jdehaan - Foi há cerca de seis meses que verifiquei pela última vez. Vou verificar suas sugestões.
N
1

Existe uma razão específica para o Dropbox não funcionar para você? Ele cobre tudo na sua lista de recursos com a adição de suporte a dispositivos móveis. Não tenho certeza se conseguirá encontrar um sistema de controle de versão "fácil" que lide bem com os binários.

Se você optar por usar o Git, aqui está uma postagem interessante sobre como hospedar seus repositórios do Git no Dropbox:

http://intranation.com/entries/2010/02/using-dropbox-git-repository/

Essa técnica também deve funcionar com os repositórios Mercurial e Subversion.

Kevin
fonte
Se ele precisa garantir a segurança dos dados, ele não seria capaz de usar o dropbox porque é de terceiros.
Darth Android
Sim, essa é a principal razão, mas também tem um limite pequeno e não quero pagar.
wag2639
Se você está preocupado com segurança, basta criptografar os dados. Sua casa pode se perder em um incêndio, ou alguém pode invadir e roubar seu computador ou seu disco rígido pode falhar. É provável que você tenha mais segurança de dados com um grande provedor de serviços respeitável como o Dropbox. Eu posso simpatizar por não querer pagar.
Lèse majesté
11
"Se ele precisa garantir a segurança dos dados ..." ?? Se ele precisa garantir a segurança dos dados, está ferrado. Nada é à prova de hackers. Você confia no seu ISP simplesmente usando a Internet. Por que não confiar no Dropbox? Em termos relativos (que você realmente precisa usar), o Dropbox é o mais seguro por aí.
cottsak
1

iFolder . Verifique os recursos para saber se é o que você está procurando. (Ele não possui controle de revisão, portanto, se esse recurso for obrigatório , o iFolder não é o que você está procurando.)

Você simplesmente salva seus arquivos localmente, como sempre fez, e o iFolder atualiza automaticamente os arquivos em um servidor de rede e os entrega para as outras máquinas que você usa.

GmonC
fonte