Os sistemas de controle de versão do FOSS funcionam para empresas? [fechadas]

11

Digamos que uma grande corporação esteja planejando substituir seu sistema de controle de versão existente. Digamos que ele esteja considerando apenas sistemas de grandes fornecedores que custam centenas de milhares de dólares porque eles têm "suporte".

O controle de versão em um ambiente corporativo precisa ser caro? Sua empresa de médio / grande porte usa um FOSS VCS como SVN / Git / Mercurial? Qual foi a experiência?

Eu tenho que pensar que não precisa ser caro, pois existem muitas opções gratuitas e provavelmente existem empresas que fornecem suporte pago ao FOSS VCS, se essa é a principal preocupação.

Não pretendo fazer essa pergunta para comparar o VCS ou decidir qual é o melhor, apenas entender as experiências com o VCS em um ambiente de TI corporativo.

jimueller
fonte

Respostas:

29

Sim.

  
Na minha experiência (reconhecidamente limitada), as soluções que não são de software livre tendem a ser mais "corporativas". Isso é,

  • Eles se integram com tudo sob o sol.
  • Eles possuem controles mais embutidos para lógica comercial complexa (permissões, controle de acesso, aprovação etc.).
  • Eles vêm com contratos de suporte e linhas de suporte técnico razoavelmente responsivas.
  • Eles são bem anunciados para as pessoas não técnicas que tomam decisões de VCS em alto nível nas grandes empresas.

Esses atributos os tornam atraentes para grandes empresas, especialmente para pessoas que não precisam usá-los. As alternativas de software livre, como contadores dos itens acima:

  • Tenha muitas ferramentas de terceiros para integrá-las a tudo o que está sob o sol (em virtude de ser mais popular que as alternativas proprietárias) e tende a ser mais fácil desenvolver ferramentas de terceiros para ser o SO.
  • Veja anteriormente - mais fácil obter ferramentas externas em torno de uma ferramenta limpa, simples e básica.
  • Em virtude de serem mais populares, eles têm um apoio mais amplo baseado na comunidade.
  • Eles não precisam dessa publicidade.

Além disso, minha experiência com VCS gratuitos comuns (mercurial / svn / etc) os torna mais rápidos, confiáveis ​​e fáceis de usar.

Fishtoaster
fonte
5
+1 - Estou muito mais feliz com o SVN do que com o SourceSafe.
Jon Hopkins
5
@ Jon +1 - Estou muito mais feliz com o Mercurial do que com o SVN.
Tim Post
1
@Tim - Atualmente avalia informalmente o Mercurial antes de uma possível migração.
Jon Hopkins
8

Eu concordo com o @Fishtoaster em que o controle de versão do FOSS possui todos os recursos (ou pode ser integrado a outro software FOSS que fornece os recursos) que até as maiores empresas precisam.

Infelizmente, na minha experiência, muitas decisões nas empresas não são tomadas por pessoas tecnicamente qualificadas para tomar essa decisão. Ou seja, as pessoas autorizadas a fazer compras em uma empresa são direcionadas diretamente pelo departamento de vendas de outras empresas para comprar seu software. O FOSS nem dá uma olhada porque não há ninguém vendendo para eles.

Em um local em que trabalhei, usamos uma dessas soluções de controle de versão "corporativas". Foi lento (levou literalmente mais de uma hora para fazer um "check-out" completo da versão mais recente do código!) E um buggy e todos reclamaram. Muitos desenvolvedores efetivamente faziam o checkout (levando, como eu disse, mais de uma hora ) e depois configuravam um repositório SVN ou Mercurial local no topo do checkout, faziam a codificação nesse repositório e só o devolviam no repositório principal quando requeridos.

Tivemos a sorte de poder instalar qualquer software que precisássemos. Mas o fato de as pessoas subverterem o "processo" como esse me diz que havia algo seriamente errado com o processo ...

Dean Harding
fonte
1
Foi exatamente isso que fiz, configurei meu próprio SVN local, pois o VCS fornecido é muito terrível.
jimueller
4

A principal diferença entre o software livre e o software comercial é que o primeiro se baseia no orgulho, enquanto o segundo se baseia na renda.

Pergunte a si mesmo: quão felizes são as pessoas que criaram o software XYZ?

Se for software livre, eles provavelmente ficaram muito felizes porque, caso contrário, por que eles se preocupariam em perder tempo com isso?

Se é um software comercial, você não pode realmente dizer. As chances são de que as pessoas foram pagas para escrever algo que realmente não gostam.

Portanto, o software FOSS ganha mais amor. Isso não significa necessariamente que é melhor, mas se for um projeto de software livre bem-sucedido, você pode ter certeza de que é melhor do que qualquer coisa que possa comprar ("Dinheiro não pode comprar felicidade", lembra?).

Como você pode dizer que é bem sucedido? Verifique o site. Se o site é atual e parece bom, é bem-sucedido desperdiçar tempo no site (os desenvolvedores do FOSS são um núcleo duro; eles não querem perder tempo com nada que não arranhe uma coceira).

Isso deixa o ponto mais importante: Suporte. As empresas não compram software para usá-lo legalmente, mas para obter suporte caso algo dê errado (pensando da mesma forma: se 100 pessoas não puderem trabalhar e eu conseguir uma correção em um dia, isso vale US $ 100.000). Felizmente, você pode comprar suporte para o software FOSS (basta consultar o site para obter dicas ou perguntar na lista de discussão).

Portanto, sim, se você fizer uma avaliação e o software livre atender às suas necessidades, não há mais motivo para preferir software comercial.

Aaron Digulla
fonte
2

Eu pessoalmente vi o SVN funcionar com êxito em uma grande empresa e ouvi relatos de outras histórias de sucesso. Eu acho que uma das principais coisas que assusta as empresas sobre código aberto é a falta de suporte. Eles sentem que estão em uma corda bamba sem uma rede de segurança. Mas muitas vezes você pode encontrar empresas que fornecerão contratos de suporte para software de código aberto. Para o SVN, existe o CollabNet e outros.

RationalGeek
fonte
1
Mas o SVN realmente não se ramifica muito bem, basicamente é péssimo. Então, como você pode usar o SVN em um projeto em que você tem, digamos, mais de 10 pessoas trabalhando na mesma base.
Bjarke Freund-Hansen
@ bjarkef: Eu faço ramificações e mesclagens com o subversion de tempos em tempos. Eu acho que é uma lenda, que o SVN é péssimo nisso. Claro, Git e Mercurial são baseados em um sistema completamente diferente, baseado em ramificações. Mas não entra em conflito com menos frequência que o Subversion. Portanto, a fusão não é o problema, apenas algumas pessoas preferem o estilo em que os repositórios e ramificações são organizados com o DVCS.
Mnementh
3
Sim. Realmente, do meu ponto de vista, o SVN se ramifica fenomenalmente bem . Provavelmente porque nosso controle de origem antes era Visual Source Safe, que era péssimo na ramificação (e TUDO MAIS).
John Christensen
@ John - Meu problema era que ir de um DVCS de volta para um CVCS era realmente difícil. Minha progressão no VCS foi RCS> VSS> Mercurial> SVN. As duas primeiras transições foram fáceis e tornaram muitas coisas mais simples, fáceis e rápidas. O último foi um pesadelo - mesmo o uso do git-svn não pode desfazer a inflexibilidade inerente da história linear antiquada do SVN. Estou ansioso pela nossa mudança para o git, mesmo que eu tivesse preferido a simplicidade do mercurial novamente.
Mark Booth