SVN para controle de versão?

16 respostas
P

Pessoal,
Estou precisando de um controlador de versão.
Estava acostumado a utilizar o SourceSafe, era bem simples.
Estou tentando utilizar o SVN, alguém o utiliza? estou vendo que ele possui muitas configurações, alguém tem alguma dica sobre o SVN ou até mesmo uma opinião.

[]'s

16 Respostas

cv1

Leia o livro e experimente aos poucos. Subversion nao eh dificil, e vale a pena conhecer bem.

feltraco

Procura por TortoiseSVN

muito simples

Quinger

feltraco:
Procura por TortoiseSVN

muito simples

Essa ferramenta é mto boa! :wink:

nbluis

Vejo muita gente falando bem do GIT.
Nunca trabalhei com ele, mas ja botei na lista de tarefas para dar uma estudada.
Dizem ser uma mudanças de paradigma de SCM.

eric_jf

Qual livro?

maiconramones

Por um acaso tu já viu isso http://www.guj.com.br/java.tutorial.artigo.170.1.guj??

Eu utilizo o svn direto e acho bem fácil. Outra coisa que você pode fazer é nos informar em quais pontos tem dúvida sobre o svn.

Ah e tem uma coisa o tortoiseSVN que o pessoal indicou é um client para o svn e não o server.

peczenyj

Leia toda a documentação do subversion antes de usar pra não fazer besteira :wink:

P

Pessoal,
Obrigado pelos toques, vou procurar ler a documentação, estou com um pouco de dificuldade por causa do inglês, mas isso não tem jeito :lol: …

Por um acaso tu já viu isso http://www.guj.com.br/java.tutorial.artigo.170.1.guj??

Eu utilizo o svn direto e acho bem fácil. Outra coisa que você pode fazer é nos informar em quais pontos tem dúvida sobre o svn.

Ah e tem uma coisa o tortoiseSVN que o pessoal indicou é um client para o svn e não o server.

Li o tutorial aqui do GUJ, se este for o funcionamento básico para ser bem simples.
Quanto ao tortoiseSVN, apesar de ser um client ele possui funcionalidade de um server também ? Por Exemplo create repository here.

Alguns pontos de duvida após começar a ler as documentações foram:

O SVN não trava o arquivo individualmente para cada usuario que esta alterando, ele junta todas as alterações realizadas por todos usuarios no mesmo arquivo;

Para atualizar um arquivo alterado basta fazer o comit, para os usuario enchergarem as alterações bastam realizar o UPDATE;
rodrigo_corinthians

Svn + Trac + TortoiseSVN = Integração entre versionamento e bug tracking perfeita :smiley:
http://www.knak.com.br/william/?q=comment/reply/5

Segue esse tutorial que não tem erro, qualquer dúvida pergunta.

maiconramones

opa, conceito “jack estripador”, vamos por partes…

1º - o tortoiseSVN é um client e nada mais.
O fato dele ter essa feature de criar o repositório não o torna server, quando tu cria o repositório o que ele faz é: colocar os arquivos numa estrutura padrão e criar os arquivos de configuração básicos, apartir disso tu deve customizar conforme as tuas necessidades, esse é um passo mais avançado. Primeiramente tu deve entender um pouco do funcionamento do svn.
O servidor funciona da seguinte maneira: no ruindos ele é um serviço, no linux ele é serviço também mas fica rodando em cima do superserver xinetd por exemplo. Depois que o serviço estiver no ar, e o repositório estiver criado deve ser executado o comando que de fato “marca” aquele projeto como versionado.

<blockquote>O SVN não trava o arquivo individualmente para cada usuario que esta alterando, ele junta todas as alterações realizadas por todos usuarios no mesmo arquivo</blockquote>

No svn existe um esquema chamado look do arquivo, onde o usuário teorciamente bloqueia o arquivo para edição, vai da política de que todas as pessoas devem "lokar" o arquivo antes de usá-lo se o mesmo  tiver lokado uma mensagem de erro aparecerá para a pessoa.

Quanto ao resto tu estás certo, mas vejo que deves se aprofundar um pouco mais no conceito básico dos comandos, commit, update, merge, etc, após a instalação.

Qualquer coisa prende o grito ai
wmitsuda

nbluis:
Vejo muita gente falando bem do GIT.
Nunca trabalhei com ele, mas ja botei na lista de tarefas para dar uma estudada.
Dizem ser uma mudanças de paradigma de SCM.

Ele é diferente no sentido de ser um sistema de controle de versões distribuído. Tem o famoso vídeo em que Linus Torvalds detona o SVN:

Pelo que ele fala na palestra, as vantagens de se usar um sistema distribuído me parecem muito atrativas, apesar de eu não ter tido tempo p/ testá-lo.

O concorrente direto dele, o Mercurial, está sendo usado em vários projetos open source da Sun.

Me parece ser o estilo ideal de sistema de controle de versões p/ projetos gigantescos onde os desenvolvedores estão espalhados geograficamente.

lilirc

Em outra empresa a qual trabalhei utilizava o Source Safe para projetos externos e o CVS no Eclipse para projetos internos, ambos são muito bons e simples de utilizar.

Atualmente estou implantando o SVN no meu setor, porém o que eu não entendi muito bem é que ele na verdade só controla o versionamento dos arquivos e não guarda no servidor o arquivo fisicamente, sendo assim, não tem alguma função a qual eu baixo do servidor uma versão do arquivo, estou certa?

Pelo menos nos testes os quais eu fiz, não encontrei tal função… :?

Rubem_Azenha

Claro que tem:

svn update
svn update -r VERSAO

lilirc

O update atualiza a versão da minha máquina… ok… mais por exemplo qdo dou um commit para enviar o arquivo pro servidor, ele guarda somente uma referencia do mesmo para versionar ou ele guarda o arquivo físico? … é isso que eu quis dizer…

B

Ele faz um cálculo de diferenças entre versões dos arquivos. De certa forma é sim o arquivo físico, dá p/ obtê-lo como fora guardado.

lilirc

Valew pelos esclarecimentos pessoal… vou fazer mais alguns testes e me aprofundar nas documentações… se surgir mais alguma dúvida eu posto aki…

Obrigada :smiley:

Criado 31 de janeiro de 2008
Ultima resposta 16 de jan. de 2009
Respostas 16
Participantes 13