Quais são os benefícios de usar, Necessariamente, em vez de Subversão?

StackOverflow https://stackoverflow.com/questions/157429

  •  03-07-2019
  •  | 
  •  

Pergunta

A minha equipa tem vindo a utilizar o SVN por alguns anos.Agora temos a opção de mudar para Forçosamente.

Quais seriam os benefícios (e armadilhas) de um interruptor?

Foi útil?

Solução

  • P4 mantém registro de sua cópia de trabalho no servidor. Isso significa que
    1. Grandes cópias de trabalho são processadas muito mais rápido. Eu costumava ter um grande projeto SVN e uma atualização simples levou 15 minutos porque ele teve que criar uma árvore da cópia de trabalho local (milhares de pastas). O acesso ao arquivo é lento. P4 armazena as informações sobre a cópia de trabalho no banco de dados, assim quaisquer operações sempre foram quase instantânea.
    2. Se você mexer com seus arquivos e não diga o servidor, você está em apuros! Você não pode simplesmente apagar um arquivo - você tem que excluir um arquivo com o cliente P4 para que o servidor sabe. Note que se você excluir um arquivo localmente, não será baixado novamente em sucessivas atualizações porque o servidor pensa que você já tem! Quando muitas isso aconteceu e eu acabei descontroladamente fora de sincronia, eu geralmente tinha que recorrer a limpar a minha cópia local e baixá-lo novamente, o que pode ser demorado. Você deve ter cuidado com isso.
  • O cliente extensão Explorador shell (pense TortoiseSVN) é uma merda e é completamente inutilizável.
  • Existem dois aplicativos cliente GUI que oferecem a melhor funcionalidade: P4Win e P4V, dos quais P4V é mais recente e mais fácil de usar, mas não tão rica em recursos
  • .
  • Existem visuais plug-ins Studio e Eclipse, que funcionam relativamente bem, embora eles não têm muitas características avançadas.
  • De um modo geral, as ofertas P4 muito menos recursos do que SVN e às vezes é totalmente confusa.
  • definições cópia de trabalho foram agradável e flexível. Eu acredito que P4 é superior ao SVN aqui: você pode definir máscaras para trabalhar pastas de cópia e criar todos os tipos de árvores bizarras, então você baixar apenas o que você quer exatamente onde quiser, sem ter que futz manualmente com vários checkouts. Este veio em muito útil quando eu tinha gigabytes de coisas no servidor e só queria um subconjunto específico do mesmo. Eu usei SVN em uma situação semelhante com muito mais problemas.
  • Ramificação sob P4 é ... estranho. Branchsets e diferentes tipos de ramos e confundindo UI. Não me lembro de muitos detalhes sobre isso, infelizmente.

Além disso, é bastante normal.

Eu recomendo que você mantenha SVN menos que você lidar com grandes bases de código ou odeio as pastas .svn desarrumando o seu sistema de arquivos. SVN + TortoiseSVN é muito mais confortável para a maioria das situações.

Outras dicas

Eu uso atualmente tanto em projetos diferentes.

  • A forçosamente mecanismo de ramificação é superior.
  • A ferramenta forçosamente conflito determinação é melhor.
  • Eu realmente gosto forte noção de uma lista de alterações das forçosamente.
  • Perforce parece mais rápido.
  • É mais fácil de configurar e começar a funcionar.
  • Alguns de nossos membros realmente como o MS Office plug-in para forçosamente, eu estou em um Mac, então não posso usá-lo.

Mas

  • Os clientes SVN são melhores, especialmente o eclipse plugin.
  • Perforce é mais caro.

Estas são apenas opiniões, então talvez esta seja uma resposta pobre :)

Se eu já estava usando um ou o outro, eu estaria muito duramente pressionado para alternar uma vez que nem parece oferecer benefícios muito significativos sobre o outro, mas a interrupção no chaveamento pode ser grande.

Update: Desde escrevendo isso, eu completamente passou a usar GIT tanto para fins pessoais e comerciais. Eu iria buscá-lo sobre qualquer SVN ou Perforce qualquer dia.

A sua equipe avaliou Git? Ele tem características análogas às disponíveis no Perforce, mas é livre (FOSS).

De qualquer é uma ótima alternativa para SVN quando se trabalha com uma grande equipe.

Eu uso forçosamente no trabalho, svn em casa.

A GUI forçosamente é bastante agradável, mas só depois que você se acostumar com isso. Ele definitivamente tem uma curva de aprendizado, quando não programadores começar a usar forçosamente, geralmente, leva algum tempo até que comecem os conceitos.

Tortoise é incrível, é muito fácil de usar. Meu advogado esposa subversões todos os seus documentos usando-o;)

Ramificação é fácil na forçosamente. Na verdade tão fácil, que se ramificam as pessoas para não demasiado razão. Então você integrar porque você ramificada. Ele pode facilmente tornar-se a única coisa que você faz.

SVN é integrado em mais produtos. Pelo menos, mais produtos que eu uso. É uma grande vantagem, porque se você tem que usar eithere externo ao seu ambiente de desenvolvimento, ambos desajeitado get.

De vez em quando temos problemas com forçosamente onde se pensa que suas cópias locais são até à data, mas eles não são. Então você tem que forçar synce, em seguida, se ele ainda não é bom, apagar seus arquivos locais e resync. Nunca tive essas questões com o SVN. Este é realmente um grande problema que você nem sequer sabe que você está trabalhando em uma cópia antiga.

Outra coisa a se pensar é por isso que você deseja alterar. Se você tem um sistema que funciona e todo mundo familiarizado com ele e feliz com isso, por que substituí-lo?

No site do Perforce eles têm um papel comparando os dois: P4 vs SVN

Obviamente, dada a fonte, você tem que perceber que salienta as vantagens da Perforce sobre SVN, mas ainda é uma leitura útil. Você nunca sabe, um dos benefícios pode muito bem ser o item assassino que sua equipe poderia beneficiar dadas as suas próprias circunstâncias únicas.

Eu certamente recomendaria Perforce para um número de razões já cobertos em outras respostas, mas eu não estou em uma posição para oferecer uma comparação com SVN tendo nunca realmente usou.

ramificação apropriada e fazendo ramos parte do namespace são os maiores benefícios que eu vejo no Perforce. A fusão é fácil. Eu não vejo nenhuma desvantagem em se afastando do Subversion.

Eu usei SVN, não muito, apenas para testá-lo. Eu usei Perforce por cerca de três anos. Eu pensei que era ótimo. O serviço ao cliente foi brilhante, muito rápido para resolver um problema que err acabou por ser apenas eu tonto, e eles ainda implementada uma característica que eu sugeri.

Alguns outros desenvolvedores e, especialmente, não desenvolvedores que tiveram de usá-lo achei um pouco complicado para aprender a usar, especialmente quando se tratava de definir um cliente-spec (um mapa de pastas no servidor para pastas locais).

Eu achei que ser muito rápido para obter os arquivos dentro e fora, e para ser muito confiável. Eu acho que a maioria dos desenvolvedores com quem trabalhei realmente gostei uma vez que tinha me acostumei com isso. Estávamos usando Visual Source Safe, antes de ligado, porém, assim, praticamente qualquer coisa é melhor do que isso.

Desvantagens, isso custa dinheiro. Acredito SVN é muito bom sistema, como SVN é livre, eu acho que você teria que ter uma razão convincente para mudar especialmente como Perforce faz demorar um pouco para aprender. Se SVN está fazendo o trabalho para você, e você não tem quaisquer queixas sobre ele, eu sugiro que você ficar com ele, e guardar o dinheiro para um dia chuvoso!

Eu tenho usado tanto, e na minha experiência Perforce faz muito sentido se você tem uma grande equipa e / ou base de código; caso contrário eu iria pegar SVN -. é mais fácil de configurar e manter

Você pode editar coisas offline no Perforce se quiser. Suas define worksapce se os arquivos são somente leitura ou gravável, para que você possa torná-los todos gravável, cortar fora e depois pedir Perforce para descobrir o que precisa ser verificado.

É melhor ter arquivos somente leitura e confira o que você precisa para que outros (e você) sabe o que foram / estão fazendo.

O melhor sistema para você depende do que são as suas necessidades, se você não tem necessidades, então vitórias Perforce.

Quem usa Subversion? equipes pequenas não-comerciais Barato ou pequenas equipas de comerciais

Quem usa Perforce? Google Sony Samsung nVidia Symantec

Como de versões recentes, Perforce tem um novo recurso para prateleiras alterações :

Prateleiras é o processo de armazenar temporariamente o trabalho em andamento em um Perforce Server sem a apresentação de uma lista de alterações. Prateleiras é útil quando você precisa executar várias tarefas de desenvolvimento (tais como interrupções de trabalho de prioridade mais alta, testando em várias plataformas) sobre o mesmo conjunto de arquivos, ou compartilhar arquivos para revisão de código antes de cometer o seu trabalho para o depósito.

Esta é análogo ao modelo de ramificação de git que permite que você facilmente mudar de um ramo local para outro quando você precisa de multitarefa.

AFAIK, o Subversion não tem recurso semelhante.

Mais informações sobre o Perforce blogue .

Necessariamente, permite que o servidor para o próprio cliente.

Um, Necessariamente, o servidor pode leitura e escrita de arquivos arbitrários sobre o cliente e, assim, executar um código arbitrário. A, Necessariamente, a configuração é toda do lado do servidor, de modo que o servidor poderia simplesmente tratar todo o disco rígido de clientes computador como um repositório, e fazer tudo o que ele queria para ele.

Nunca executar, Necessariamente, exceto em uma SELinux sandbox.

Lembre-se:O Forçosamente cliente é o servidor de fantoche. Você deve usar o sistema operacional de recursos de segurança para evitar que ele faça algo que você não quer que ele faça. SEMPRE, tratar, Necessariamente, de cliente como hostis.

Perforce licenciamento desliza para baixo em custo como número de assentos sobe, se bem me lembro. Portanto, não é exatamente US $ 900 por assento. É também uma licença baseada em servidor; você paga por número total de desenvolvedores humanos usá-lo, não por cliente máquina de usá-lo. Então, se você é uma loja de 200 pessoas, a licença de assento 200 permite que todos eles forçosamente uso, mesmo em casa.

Na minha opinião razão # 1 para seleccionar entre SVN e Perforce é custo .

pequeno repositórios: SVN faz o seu trabalho muito bem e de forma gratuita.

Big repositórios: É fatal para usar o SVN: http://yoawsconsult.blogspot.com/2009/05/whenwhy-you-cant-afford-to-use.html . Perforce pode fazer grandes repositórios, mas você tem que pagar por isso e para começar a conhecê-lo.

De minha prática:

  • Perforce projetado para armazenar também enormes arquivos blob (como distribuições de software), SVN armazenar todos os seus dados como texto. É impossível para armazenar tais dados binários efetivamente em svn

  • Perforce apoio útil coisa como "mudanças Shelve". Usuário perguntou forçosamente à mudança loja como um "patch" no servidor forçosamente. Mais usuários, em seguida, pode rever as alterações se autor pediu-lhes. SVN não apoiá-lo

  • Svn formato de linha de comando é mais fácil de entender e lembrar e para uso diário

  • SVN é gratuito

  • Em "git" e em "svn" editar você muda diretamente através de edição de arquivos em sistema de arquivos local depois de receber arquivos de repo. Em forçosamente "o direito" maneira de trabalhar com arquivos é marcada-lhes que você está indo para o trabalho com eles (P4 edição) .... Em teoria mais caras estarão disponíveis para o visualizar, na prática não é confortável

  • cliente Perforce Workspace preparar na sua necessidade sistema local mais tempo, então svn devido à configuração extra que deve ser feito

Ser capaz de fazer tudo só do Exlorer via TortoiseSVN se sente muito confortável! Portanto, não há sequer um P4 Extensão instalado. Mas não é realmente tão sofisticado!

Por outro lado, os clientes P4 oferece uma vista acessível para o repositório do servidor para que se possa trabalhar sem uma verificação completa. Isso sempre me senti um pouco pesado em dias SVN com TSVN somente.

Ao dizer isso eu não consigo entender o comentário Top Posters:

  • O cliente extensão Explorador shell (pense TortoiseSVN) é uma merda e é completamente inutilizável.

Para FOSS TortoiseSVN é apenas ótimo! (Mesmo que o ícone coisa trabalhou um pouco mal-intencionado e diferente em cada máquina ..)

com TortoiseSVN você:

  • pode reorganizar funções
    • para trazer 'get bloqueio ..' frente, por exemplo,
  • realmente ter acesso a todas as funções do explorador
  • têm ícones no menu shell
  • são notificados sobre atualizações

Uma desvantagem de forçosamente contra a sub versão é comando de exportação no SVN. É mais fácil exportar ou baixar o código de uma versão para qualquer lugar. você não precisa criar espaço de trabalho para isso. Mas, na forçosamente você pode obter o código versão-ed para seu espaço de trabalho somente.

A principal vantagem de usar subversão sobre Perforce é na minha opinião capacidade de editar as coisas off-line e, simultaneamente, com os seus colegas.

Se a infra-estrutura de dados é vagamente ligado (há off-line tempo), rochas SVN. Você pode fazer muita coisa mesmo se o servidor não seria acessível. Perforce essencialmente requer uma conexão com o servidor sempre disponível.

Disclaimer: minha informação sobre Perforce é antigo, usado por um tempo em 2005-06 antes de mudar totalmente a svn

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top