Segurança na edição de arquivos com o Eclipse

4 respostas
Growth

Bom dia,

Estou trabalhando em um projeto com mais dois programadores, onde cada um de nós possui o ambiente de desenvolvimento instalado em nossas máquinas.
Estamos usando Eclipse e CVS(dentro do eclipse).

Como devo fazer para que , quando um programador esteja editando um arquivo em sua máquina este arquivo não possa ser editado por outro programador?

O máximo que consegui foi fazer aparecer uma mensagem de aviso, mas se o programador selecionar , será permitido editar o arquivo.

Vide anexo.


4 Respostas

fcoury

Amigo,

Se não me engano é você que usava SourceSafe antes???

Se for, você deve estar acostumado com CheckOut e CheckIn, certo? Mas o CVS não funciona desta forma.

No CVS você pode deixar dois desenvolvedores mexerem em um mesmo fonte, e o CVS depois faz a junção das alterações quase automaticamente. A não ser que haja um conflito onde os dois mexeram na mesma área do fonte, você não terá problemas.

Dá uma lida nesses links para maiores informações:

[list] https://eclipse-tutorial.dev.java.net/eclipse-tutorial/part2.html[/list]
[list] http://www.fsl.cs.sunysb.edu/~dquigley/cse219/index.php?it=eclipse&tt=cvs&pf=y[/list]

PadrE

Não sei se isso eh possível…
Pois ando vc edita um arquivo esse fica na sua máquina, e soh vai para o CVS qndo vc commitar as alterações… qndo isso eh feito, ele sobrescreve o arquivo que estaja lá…

Uma coisa que vc pode controlar eh a versão dos arquivos… verificar se a sua eha a última que esta no repositório (CVS) e assim… ao fazer o commit vc pede para que seja feita uma sincronização entre o arquivo na sua máquina e o que está no repositório…

Não chueguei a ver os links que foram passados… mas vê se tem algo neles que diz se o CVS faz uma sincronização automatica… ao algo assim…

fcoury

PadrE,

É possivel sim, acredite :slight_smile:

Eu sei que parece muito difícil uma coisa dessa acontecer, principalmente para quem tem um passado de SourceSafe (eu vim desse mundo também!).

O CVS não vai deixar você sobrescrever um arquivo nunca, a não ser que você FORCE essa operação (chamada no Eclipse de Overwrite and Commit eu acho).

Normalmente fazemos primeiro um update do CVS, que junta o fonte do CVS com o seu local (como eu disse - quase sempre automaticamente) e depois um commit. E, como não existem conflitos depois do update, o commit acontece com a junção dos dois fontes.

Espero que isso ajude.

Abraços!

fcoury

Faça o seguinte teste:

Na sua máquina

  1. Baixe um arquivo do CVS

  2. Altere uma parte do arquivo

Na máquina de outro desenvolvedor

  1. Baixe o mesmo arquivo do CVS

  2. Altere OUTRA parte do arquivo

  3. Escolha Team > Commit em cima do arquivo e confirme

Na sua máquina

  1. Vá no Team > Synchronize do Eclipse

  2. Clique duas vezes na sua classe, o Eclipse deve mostrar as suas alterações e também as alterações do outro desenvolvedor

  3. Clique com o botão direto na sua classe e escolha Update

  4. Clique duas vezes de novo na sua classe, você irá ver que as alterações do outro desenvolvedor já foram incorporadas na sua classe

  5. Escolha commit e confirme

Voilà! Sem check-out/check-in, tudo funcionou :slight_smile:

Criado 19 de outubro de 2006
Ultima resposta 19 de out. de 2006
Respostas 4
Participantes 3