Questão Quão bem é um repositório Apache Subversion adequado para facilitar a edição colaborativa de vários arquivos .docx, .doc, .xls (s), etc.?


Por um projeto de meio semestre, um grupo de cinco ou menos pessoas estará trabalhando em conjunto em um projeto que foi distribuído para eles (e deve ser transformado em classificação) como uma pasta de .doc (x), .xls (x) , etc., arquivos. Um arquivo em particular verá a maior parte da edição - um arquivo .xlsx.

Os membros usarão o TortoiseSVN para confirmar alterações / fazer checkouts. Quão bem o SVN facilitará a edição colaborativa nesta instância? - por exemplo, como o svn lidaria com a mesclagem do mesmo arquivo editado de maneiras diferentes por dois clientes diferentes?


4


origem




Respostas:


Quão bem o SVN facilitará a edição colaborativa nesta instância? - por exemplo, como o svn lidaria com a mesclagem do mesmo arquivo editado de maneiras diferentes por dois clientes diferentes?

Esta é uma questão de dupla face, na verdade.

como svn lidar com a fusão do mesmo arquivo editado de maneiras diferentes

Muito bom. É realmente um dos recursos básicos de qualquer SCM baseado em mesclagem - combinar histórico divergente de alterações

Quão bem o SVN facilitará a edição colaborativa nesta instância?

Pobre, porque, como já foi dito, arquivos antigos do MS-Office eram "apenas binários" para subversão, mesclagem automática de binários pode dar resultados imprevisíveis, para mesclagens manuais manuais é mais uma questão para administradores do Subversion, que podem (tem que) fornecer e configurar ferramentas especiais de diff | mesclar para * .doc no repositório para permitir que os usuários finais façam mesclagens no modo WYSIWYG usual

Para a nova situação do Office baseada em XML tornou-se ainda pior. AFAICR, docx |Os arquivos .xlsx são realmente arquivos multi-arquivos zip e a mesclagem pode, teoricamente, afetar e alterar mais de um arquivo. Eu não sei como lidar com este caso


2



Essencialmente, usar um repositório SVN para essa finalidade funcionará bem apenas para manter os arquivos em um único lugar, pelo menos duas pessoas tentarão confirmar versões de arquivos diferentes. - jhstuckey
@jhstuckey: sim. Mas então, o Dropbox é muito mais fácil de configurar e usar - Thilo
O que poderia ser usado para trabalhar colaborativamente em arquivos microsoft seria uma questão separada, ou a questão é simplesmente que eles não podem? - jhstuckey
@jhstuckey - isso pode ser uma questão separada (para fornecer uma solução definitiva) e arquivos do Office pode ser usado no merge-workflow: apenas alguns truques necessários para serem implementados. - Lazy Badger
Dado o pequeno grupo de usuários e um ou dois arquivos que vamos editar - uma solução para isso pode ser simplesmente dividir o arquivo do Excel por pastas de trabalho (já que todos têm determinadas pastas de trabalho dentro do arquivo que estar editando e sem outras pastas de trabalho) e, em seguida, colete-as novamente no final. Nós temos então controle de versão, (provedor svn nos dá) comentando e outros recursos web-ui. - jhstuckey


O SVN não é realmente adequado para o versionamento de arquivos binários (que são .doc e .xls), como os arquivos não contêm texto, é praticamente impossível diferenciar os arquivos ou mesclar as mudanças. O formato mais recente (.docx e .xlsx) é, na verdade, documentos XML que poderiam ajudar um pouco com as operações de diferenciação e mesclagem, mas ainda assim seriam bastante difíceis.

Minha recomendação seria usar algo como documentos Google que permitirá edição e edição simultânea de até 50 usuários (as planilhas também). Se o seu set de mortos usando o SVN eu recomendaria ficar com documentos de texto simples, eu sei de algumas pessoas que usaram Látex e SVN para algumas atribuições, o que lhes permitiu fazer formatação.


5



Obrigado pela sua resposta. Não podemos usar texto simples, já que nosso trabalho deve ser devolvido no formato que foi distribuído para nós - ou você quis dizer, trabalhar em texto simples, depois copiá-lo manualmente para os arquivos binários? - jhstuckey
@jhstuckey Essa é sempre uma opção. Nunca fiquei tão feliz com as opções de formatação disponíveis no Google Docs. Por isso, costumo trabalhar com o documento no Google Docs com todos, depois de todo o conteúdo estar completo. Eu baixá-lo como um documento do Word e fazer a formatação final no Word. - Dracs
specia diffs-mergers (external) pode resolver problema de arquivos de visualização - Lazy Badger
@ LazyBadger, RTF não é texto por qualquer strech da imaginação, por isso não é tratado razoavelmente por qualquer VCS conhecido para mim. BTW, XML ou tal também tem muita estrutura (não apenas "independente (principalmente) linhas de texto") para ser manuseado corretamente. - vonbrand
Eu acho que esta resposta não tem uma nuance importante: o Subversion não pode lidar com formatos binários eficientemente, mas os clientes do Subversion posso ser usado em combinação com ferramentas de comparação e mesclagem específicas do formato de documento - por exemplo, quando perguntado para comparar duas revisões de um documento do Word, o TortoiseSVN irá simplesmente ativar o Word no modo de comparação e mesclagem de documentos nas duas versões. O Subversion não limita você aqui. - reinierpost


Não muito. Na verdade, nenhum sistema de controle de versão é muito bom em tal tarefa, eles são adaptados para lidar com arquivos de texto simples (os tipos que você menciona são todos binários). Você pode lidar com eles, mas tarefas como "mostrar alterações" ou "quem fez ..." não terão respostas. E isso é mais do ponto de controle de versão.

Talvez uma solução melhor seja compartilhar documentos por meio do Google Docs ou algo parecido?


4