Programação com Objectos/Projecto de Programação com Objectos/Repositório CVS
From Wiki**3
| AVISOS - Avaliação em Época Normal |
|---|
|
Esclarecimento de dúvidas:
|
|
Requisitos para desenvolvimento, material de apoio e actualizações do enunciado (ver informação completa em Projecto de Programação com Objectos):
|
|
Processo de avaliação (ver informação completa em Avaliação do Projecto):
|
Localização e Acesso
Os repositórios CVS para os projectos (um por grupo) já contêm versões iniciais de todos os projectos (i.e., já foi feito o "import" inicial). Os repositórios estão disponíveis no AFS em:
- /afs/ist.utl.pt/groups/leic-po/po15/cvs -- esta directoria não deve ser utilizada directamente
No texto que se segue:
- ### designa o número do grupo sempre com três dígitos
- ##### designa o número de aluno, sempre com cinco dígitos
Assim, os valores possíveis para a variável de ambiente CVSROOT ou pela opção -d do comando "cvs") são:
- /afs/ist.utl.pt/groups/leic-po/po15/cvs/### (disponível em qualquer máquina com AFS e utilizador com token válido para a célula ist.utl.pt)
- :ext:ist1#####@sigma.ist.utl.pt:/afs/ist.utl.pt/groups/leic-po/po15/cvs/### (disponível via SSH; verificar que CVS_RSH=ssh)
Os alunos que ainda não visitaram o self-service do CIIST (DSI), devem fazê-lo, para activação dos serviços relevantes (AFS e Shell, pelo menos). Sem isso, não conseguirão desenvolver ou entregar o projecto, reprovando à disciplina.
Conteúdo e Estrutura do Repositório
Cada projecto é constituído por módulos (por exemplo, no eclipse, são projectos independentes):
- project/poof-core
- project/poof-textui
Estes módulos podem ser obtidos em conjunto fazendo checkout de project (não recomendado, pois podem aparecer interferências indesejáveis -- configurações de eclipse, por exemplo).
O repositório já tem a seguinte estrutura -- esta estrutura não pode ser alterada:
- Makefile (makefile "principal" -- repete a acção sobre as secundárias)
- poof-core (directoria principal da biblioteca com a funcionalidade sem interface "gráfica")
- poof-core/Makefile (makefile secundária, semelhante à disponibilizada no "core" da aplicação bancária)
- poof-core/src (directoria onde deve residir o código do "core", à semelhança do que acontece na aplicação bancária)
- poof-textui (directoria correspondente interface baseada em texto)
- poof-textui/Makefile (makefile secundária, semelhante à disponibilizada na biblioteca "textui" da aplicação bancária)
- poof-textui/src (directoria onde já reside o código da interface textual, à semelhança do que acontece com a biblioteca equivalente na aplicação bancária)
Esta estrutura já contém comandos parcialmente implementados. Estas implementações devem ser adaptadas ao código particular de cada projecto, mas os nomes das classes em poof-textui não podem ser alterados.
Cuidados a ter na Utilização do Repositório CVS
NÃO FAZER
- cvs init (não é necessário: o repositório já existe)
- cvs import (não é necessário: o projecto já existe)
- cd /afs/ist.utl.pt/groups/leic-po/po15/cvs (ou qualquer outra manipulação directa dos ficheiros do repositório: toda a interacção com o repositório deve ser limitada ao comando "cvs")
FAZER
Antes de tudo o mais, fazer cópias de segurança (vulgo "backups") de tudo o que já foi feito.
O repositório já contém uma versão preliminar do projecto e devem ser dados os seguintes passos, para continuar a desenvolver o projecto:
- cvs co project (permite criar localmente uma directoria controlada pelo CVS, com o nome project, com a estrutura apresentada acima, contendo os ficheiros do projecto);
- Editar/adicionar material do/ao projecto;
- Caso sejam criados ficheiros ou directórios novos, fazer cvs add ficheiro1 ficheiro2 ... ficheiro3 (adicionar cada ficheiro novo ao projecto no CVS);
- cvs update (antes de enviar alteração locais para o repositório, verificar se há actualizações a incorporar na cópia local e que não foi esquecido nenhum ficheiro importante: voltar a 3 até terem sido todos adicionados)
- cvs commit (enviar alterações para o repositório)
Observações importantes
- No ponto 3 acima, é importante notar que quando se quer adicionar o conteúdo de uma (sub)directoria, deve ser primeiro adicionada a própria directoria e, só depois, o seu conteúdo.
- Não adicionar cópias do material de apoio (CDK e RTS) ao projecto (serão removidas e quaisquer alterações perdidas -- além disso, lixo no repositório é penalizado).
- Pessoas sem área no AFS, ou sem login activado, não poderão aceder ao conteúdo do repositório: para activar estes acessos, consultar o self-service do CIIST (DSI). Em caso de dificuldade, consultar o corpo docente.
- A estrutura do projecto no CVS deve ser mantida como apresentado.
- Em caso de dúvidas, consultar o corpo docente.
Agradece-se a comunicação de eventuais problemas.