• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

M6

Que sistema de controlo de versões usam?

Que sistema de controlo de versões usam?   48 membros votaram

  1. 1. Que sistema de controlo de versões usam?

    • CVS
      6
    • Subversion
      13
    • Visual Source Safe
      5
    • SourceGear Vault
      0
    • O que é um sistema de controle de versões?
      24

Please inicie sessão ou registe-se para votar.

64 mensagens neste tópico

O controle de versões é uma peça imprescindível no dia-a-dia de qualquer programador, sendo mesmo considerado o seu melhor e mais fiel amigo. Vamos lá ver quantos de nós trabalhamos "a sério" e quantos de nós não passamos de curiosos da programação.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

apesar de todo a gente me dizer que o Subversion é actualmente a melhor opção, eu escolhi o cvs.

no entanto aindo o uso à pouco tempo e apenas recorro às funcionalidades mais simples (nada de criar ramos ou coisas do género).

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

será que é mesmo imprescindível? já programa ha bastantes anos e nunca usei nada disso e para dizer a verdade, não sei bem o seu propósito e a utilidade que me iria dar. se calhar, cenas que demoro montes de tempo a fazer podiam ser simplificadas e feitas mais rápidas usando isso?

a única coisa que eu sei sobre isso, é que em muitos sitios existem os repositorios que usam esse tipo de software para ter montes de versões dos seus programas, tipo, versões de development e assim e um gajo pode sacar e exprimentar se quiser (por exemplo).

mas para mim, que sou programador, e as multiplas versões que existem apenas são para mim (publicamente só as finais), que utilidade teria isso para mim?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

a principal utilidade que eu vejo num sistema de controlo de versões, é que permite recuperar versões antigas de ficheiros.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

apesar de todo a gente me dizer que o Subversion é actualmente a melhor opção, eu escolhi o cvs.

no entanto aindo o uso à pouco tempo e apenas recorro às funcionalidades mais simples (nada de criar ramos ou coisas do género).

Idem. :D

Se bem que uso o CVS há muitos anos e migrar para subversion não se justifica até agora.

Quanto aos ramos, não tenhas medo, também stessava com isso no início mas depois de fazeres uma ou duas vezes, aquilo deixa de ter segredos. O "truque" está no facto de o CVS nunca estragar nada e, no limite, podes sempre ir buscar uma versão atrás. :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

será que é mesmo imprescindível?

ARG!!!! Nãããooo...

Essa pergunta  nem se coloca... É totalmente imprescindível.

já programa ha bastantes anos e nunca usei nada disso e para dizer a verdade, não sei bem o seu propósito e a utilidade que me iria dar. se calhar, cenas que demoro montes de tempo a fazer podiam ser simplificadas e feitas mais rápidas usando isso?

Vou-te contar o que me disseram quando comecei a usar o CVS, que é exactamente aquilo que sinto actualmente:

"Antes de usar o CVS pensava, mas para quê? Nunca necessitei disso antes e sempre me dei bem. Agora que uso o CVS pergunto como é possível ter trabalhado tantos anos sem um controle de versões." :D

O CVS faz uma gestão de controle de versões, permite salvaguardar o teu trabalho, ajuda no desenvolvimento colaborativo de uma equipa, permite criar ramificações e fusões de código.

É uma ferramenta totalmente imprescindível para quem efectua desenvolvimento, não dá mesmo para viver sem um controle de versões, é uma autêntica bóia salva vidas...

Lê o tópico Gestão, Ferramentas, Sistemas e Ambientes em especial a parte do "Ambiente de Desenvolvimento" que ilustra  a necessidade de um controle de versões.

a única coisa que eu sei sobre isso, é que em muitos sitios existem os repositorios que usam esse tipo de software para ter montes de versões dos seus programas, tipo, versões de development e assim e um gajo pode sacar e exprimentar se quiser (por exemplo).

Isso é apenas uma das vertentes, o CVS é muito mais do que isso.

mas para mim, que sou programador, e as multiplas versões que existem apenas são para mim (publicamente só as finais), que utilidade teria isso para mim?

Só o facto de necessitares apenas de ter uma única versão na tua máquina é razão mais do que suficiente.

Quando fazes uma alteração numa dessas versões propagas o código com as outras versões à mão não é? Com o CVS a fusão é automática. :D

Depois queres saber porque raio uma função estava a funcionar na semana passada e agora não, com fazes? Aposto que é um autêntico molho de bróculos... Primeiro porque não há nenhuma versão da semana passada, ou se há, está num zip que é necessário descompactar e depois é necessário usar um "text diff" manual ou ver as diferenças à mão.

Depois se quizeres experimentar esse código, aposto que renomeias o ficheiro actual para qualquer a começar por um _, e copias o ficheiro antigo para o código novo e quando vires o problema vais apagar o ficheiro e remoear o _ para o seu nome actual... Mas depois começas a ter dúvidas se o ficheiro era o _ ou o __ ou mesmo o ___, porque já existem várias versões desse ficheiro... Um autêntico molho de bróculos...

No CVS é simples, consultas as diferenças da versão actual com a da semana passada ou vais buscar a versão da semana passada e testas e vês o problema, depois voltas a actualiar para a versão actual. Tudo isto com dois ou três clickes de rato (se usares uma interface gráfica) ou com comandos simples como "cvs diff" "cvs up" e "cvs com"...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

a principal utilidade que eu vejo num sistema de controlo de versões, é que permite recuperar versões antigas de ficheiros.

É muito mais do que isso. Essa é a sua vantagem mais imediata, mas é bastante mais do que isso.

Fusão de código, ramificações, suporte ao desenvolvimento de outras versões, fusão de versões, "blame" (ver que é que fez borrada :D), cometários, integração com o bug tracking, enfim, um autêntico canivete suiço...

Como disse ao Nazgulled, lê o tópico Gestão, Ferramentas, Sistemas e Ambientes em especial a parte do "Ambiente de Desenvolvimento" que ilustra  a necessidade de um controle de versões.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

eu nem sabia nada disto... lolol  :-[ mas pareceu interessante, tenho que explorar...  ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isto é muito mais do que um "brinquedo fixe", é um verdadeiro anjo da guarda.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Estou como a tofas e como o Drone, desconhecia tal "coisa", mas se percebi esse tipo de programas é muito util quando se trata de software a sério porque para min p exemplo não me serve de muit visto que eu só faço programas pequenitos  :)  ou estarei enganado?

cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Estás certo, para  mim a mesma coisa que gravo tudo num unico ficheiro php e todo o que faço faço no mesmo ficheiro, é bom para quem tem coisas a sério

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Estou como a tofas e como o Drone, desconhecia tal "coisa", mas se percebi esse tipo de programas é muito util quando se trata de software a sério porque para min p exemplo não me serve de muit visto que eu só faço programas pequenitos  :)  ou estarei enganado?

cumps

Estás enganado, a menos que não te importes de dar em louco por perderes um programa ou dar em louco por não conseguires ver que alterações fizeste que introduziram um bug no programa...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Estás certo, para  mim a mesma coisa que gravo tudo num unico ficheiro php e todo o que faço faço no mesmo ficheiro, é bom para quem tem coisas a sério

ARG!!! Não Gurzi, não... Isso não se faz... Tens de refactorizar e organizar as coisas de outra forma... Qualquer dia queres dás em louco a mexer nisso...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sendo assim vou explorar mais essa area e exprimentar esse CVS  :)

cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Por aki usa-se Microsoft Visual Source Safe.

Parece k fui o primeiro a selecionar este :biggrin:

Não temos tido problemas.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

@M6

não me convenceste... lol... para alem de todas as features que enunciaste, a unica que poderei eventualmente dar uso, seria ao facto de poder obter versões antigas, porque de resto, não estou a ver o uso para mim, que faço os meus projectos sozinhos (até ao dia que isso deixar de acontecer). sinceramente, não tou a ver o uso que lhe irei dar, talvez um dia exprimente isso, para já, não tenho tempo nenhum para perder tempo com isso, prefiro acabar as coisas da mesma forma que sempre as fiz.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O SVN é, em minha opinião, a solução a adoptar para quem se quer meter nisto. O sourceForge já está a passar todo para SVN. Tem o melhor do CVS e muito mais... Além disso, é uma evolução natural do CVS, que hoje é utilizado, mais por questões de habituação e de não ter o trabalho de portar tudo para SVN, ou criar novos repositórios (e além disso o CVS também não é mau). Quem quer criar novos deve optar por SVN.

Tem um excelente cliente para windows que é o TortoiseSVN e para linux existem diversos clientes com interface gráfica... mas o melhor no linux ainda é o comando de shell (existem alguns projectos, inclusivé em Mono, mas ainda não encontrei nenhum que trabalhasse na perfeição... se alguém conhecer um bom.. que avise).

Esta é uma ferramenta para programadores... para guardar código, é fácil de aprender e muito útil. Pode deixar de se comentar código do tipo - isto ainda pode dar jeito deixa cá comentar... Ou por exemplo, criar uma release, e passasdo uns meses queremos ver o que é foi na release, caso seja necessário fazer updates (normalmente a release já foi usada e podemos ter informação guardada da qual queremos manter e a coerência).

Além disso para se trabalhar em equipa é fundamental. Por exemplo, se quiserem ter aqui projectos onde todos colaborem, têm de ter um sistema de controlo de versões, caso contrário, seria o CAOS. Assim diferentes pessoas podem mexer no mesmo código e ao fazerem o COMMIT, a coêrencia é garantida pelo SVN.

Existem n vantagens e eu já estou farto de escrever... mas até para fazer backups é muito mais fácil (ocupa menos espaço, uma vez que guarda os diffs e basta fazer backup ao repositório)

Usem SVN :), as ferramentas desenvolvidas por programadores para programadores são normalmente muito boas...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

@M6

não me convenceste... lol... para alem de todas as features que enunciaste, a unica que poderei eventualmente dar uso, seria ao facto de poder obter versões antigas, porque de resto, não estou a ver o uso para mim, que faço os meus projectos sozinhos (até ao dia que isso deixar de acontecer). sinceramente, não tou a ver o uso que lhe irei dar, talvez um dia exprimente isso, para já, não tenho tempo nenhum para perder tempo com isso, prefiro acabar as coisas da mesma forma que sempre as fiz.

Obviamente a gestão de versões é exactamente o ponto forte de um sistema de gestão de versões. Logo a maior mais valia é exactamente aquilo que te captivou a atenção...

Eu não tenho de convencer ninguém, a opção entre continuar a trabalhar de forma amadora não usando um controle de versões ou trabalhar a sério como qualquer profissional digno desse nome é  de cada um.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Nao existe ai nenhum site com exemplos praticos de como usar isso? podera ser usado com qualquer tipo de programação?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Um sistema de controle de versões torna-se MUITO mais importante quando se trabalha em equipa, e quando há várias pessoas a trabalhar sobre o código. O que não invalida o facto de mesmo para um único programador também poder fazer sentido.

No meu projecto actualmente, uso uma ferramenta do tempo da maria cachucha e com tantas manhas e problemas que quase que prefiro optar por guardar as coisas em diskettes que guardo ao sol, mesmo ao lado de um grande iman numa loja de telemóveis ao lado de uma antena retransmissora da TMN.

Este sistema chama-se PVCS e é horrivel, mau, péssimo, e nem sequer consegue fazer aquilo para que serve como deve de ser. Infelizmente aqui é o que se usa, e não podemos simplesmente mudar B)

- Não existe controle de utilizadores, ou seja, existe, mas se não tens acesso a um projecto, basta copiar os ficheiros desse projecto para baixo de uma pasta de um projecto que tens acesso e voilá, já tens acesso.

- Consegues que o PVCS entre em ciclo infinito copiando para uma directoria ela própria .. O PVCS só pára quando esgotar o tamanho permitido no Windows para o PATH.

- Não consegues saber que versão de um ficheiro tens no disco.

É mau, MUITO mau

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Nao existe ai nenhum site com exemplos praticos de como usar isso? podera ser usado com qualquer tipo de programação?

tens aqui dois manuais do cvs, um em português e outro em inglês, não sei se é exactamente o que pretendes, mas tem lá alguns exemplo.

quanto à parte de poder ser usado em qualquer tipo de programação, eu uso o cvs para gerenciar as minhas bibliotecas de C, para a minha página web, para os documentos que escrevo em LaTeX, etc. podes usá-lo para organizar qualquer tipo de documento/ficheiro...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora