Duvida subversion + de 1 desenvolvedor no mesmo projeto
5 respostas
fabioebner
Pessoal. tenho uma duvida… como eu trabalho com o subversion com mais de uma pessoa mexendo no mesmo projeto??? da pra fazer isso? pq o basico de um alterar, dar commit o outro qdo for abrir dar um update altera e da commit bele…
mas e qdo tiver duas pessoas mexendo no mesmo projeto… algumas paginas alteradas serao comuns(como o face-config) outras serao diferente… como proceder? dar merge, commit, update, lock, alguem pode me dar uma ajuda??
Para desenvolvimento “concorrente”, você tem duas opções:
:arrow: Lock dos arquivos que estiver mexendo, para garantir que só você esta mexendo nesses arquivos e não correr o risco de perder as alterações por que alguem fez um commit em cima do seu.
:arrow: Não usar lock; usar merge.
Não utilizo SVN, mas eu prefiro a abordagem do merge, o lock te dá uma falsa sensação de segurança.
Eu procuro, antes de commitar, fazer um update do repositorio (e aí fazer o merge das alterações localmente), compilar, rodar testes, e depois fazer o commit.
microfilo… entao eu tentei usar o merge mas deu uns rolos mto loco. nao consegui. e se eu abrir uma classe. alterar e depois antes de salvar dar um update ele nao vai perder o q eu fiz??
acdesouza
Situação onde não precisa de merge manual:
Você altera o arquivo xpto.java;
Você faz um update do seu projeto localmente: Aqui o Svn irá copiar as alterações que estão no repositório e que você não tem. Para os arquivos que você não modificou. Isso é um merge altomático.
Você commita as alterações do arquivo xpto.java;
Situação onde precisa de merge manual:
Você altera o arquivo xpto.java;
Outra pessoa altera o arquivo xpto.java;
Outra pessoa faz um update do projeto localmente: Aqui o Svn irá copiar as alterações que estão no repositório e que a outra pessoa não tem. Para os arquivos que você não modificou. Isso é um merge automático.
Outra pessoa commita as alterações do arquivo xpto.java;
Você faz um update do projeto localmente: Aqui o Svn irá copiar as alterações que estão no repositório e que a você não tem. Para os arquivos que você não modificou. Isso é um merge automático. Para os arquivos que você modificou, e foram modificados no servidor, o Svn irá gerar um backup do seu arquivo, uma cópia do arquivo que está no servidor e irá marcar, no seu arquivo as situações em que você precisa decidir qual linha está certa. Isso é um merge manual.
Você marca o arquivo xpto.java como resolvido, depois de fazer o merge manualmente ;