Compiladores/Projecto de Compiladores/Repositório GIT: Difference between revisions
From Wiki**3
No edit summary |
|||
| (8 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
{{ | {{PRJHEADER}} | ||
{{TOCright}} | {{TOCright}} | ||
<!--'''<font color="red">EM PREPARAÇÃO</font>''' (acessos a providenciar em breve) | <!--'''<font color="red">EM PREPARAÇÃO</font>''' (acessos a providenciar em breve) | ||
| Line 15: | Line 13: | ||
Os repositórios estão disponíveis no Gitlab da RNL em: | Os repositórios estão disponíveis no Gitlab da RNL em: | ||
* LEIC-A: ''' | * LEIC-A: '''https://gitlab.rnl.tecnico.ulisboa.pt/leic-a-co25/prj'''<!-- | ||
* LEIC-T: '''<nowiki>https://gitlab.rnl.tecnico.ulisboa.pt/leic-t- | * LEIC-T: '''<nowiki>https://gitlab.rnl.tecnico.ulisboa.pt/leic-t-co25/prj</nowiki>'''--> | ||
O conteúdo do repositório pode ser manipulado com o comando '''git''' ou com qualquer outro cliente compatível. | O conteúdo do repositório pode ser manipulado com o comando '''git''' ou com qualquer outro cliente compatível. | ||
| Line 26: | Line 24: | ||
Todos os alunos do IST têm de ter credenciais válidas para poderem ser avaliados na disciplina. | Todos os alunos do IST têm de ter credenciais válidas para poderem ser avaliados na disciplina. | ||
{{Aviso|Apenas é considerado para avaliação o ramo ''' | {{Aviso|Apenas é considerado para avaliação o ramo '''master'''. Alunos que não coloquem o projecto neste ramo serão excluídos da avaliação.}} | ||
{{Aviso|Para realização do teste prático é ainda necessário activar os serviços AFS e Shell no [https://selfservice.dsi.tecnico.ulisboa.pt/ self-service da DSI]. Sem isso, não conseguirão completar a avaliação do projecto, reprovando à disciplina.}} | {{Aviso|Para realização do teste prático é ainda necessário activar os serviços AFS e Shell no [https://selfservice.dsi.tecnico.ulisboa.pt/ self-service da DSI]. Sem isso, não conseguirão completar a avaliação do projecto, reprovando à disciplina.}} | ||
| Line 35: | Line 33: | ||
A makefile pode precisar de ser adaptada (variáveis indicadas), mas não deve ser substancialmente alterada. | A makefile pode precisar de ser adaptada (variáveis indicadas), mas não deve ser substancialmente alterada. | ||
Breve descrição da estrutura de directórios (abaixo de ''' | Breve descrição da estrutura de directórios (abaixo de '''udf'''): | ||
* '''ast''' (directoria que contém as classes dos nós da árvore sintáctica abstracta - padrão Composite) | * '''ast''' (directoria que contém as classes dos nós da árvore sintáctica abstracta - padrão Composite) | ||
| Line 45: | Line 43: | ||
== Cuidados a ter na Utilização do Repositório GIT == | == Cuidados a ter na Utilização do Repositório GIT == | ||
<!-- | |||
Exemplos para a LEIC-A (LEIC-T é análoga). | Exemplos para a LEIC-A (LEIC-T é análoga). | ||
--> | |||
=== <font color="red">NÃO FAZER</font> === | === <font color="red">NÃO FAZER</font> === | ||
| Line 58: | Line 56: | ||
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: | 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: | ||
# '''git clone git@gitlab.rnl.tecnico.ulisboa.pt:leic-a- | # '''git clone git@gitlab.rnl.tecnico.ulisboa.pt:leic-a-co25/prj/000.git''' (permite obter uma cópia local contendo os ficheiros, no exemplo, do projecto do grupo '''000'''); | ||
# Editar/adicionar material do/ao projecto; | # Editar/adicionar material do/ao projecto; | ||
# Caso sejam criados ficheiros ou directórios novos, fazer '''git add ficheiro1 ficheiro2 ... ficheiroN''' (adicionar novos ficheiros/directorias ao projecto); | # Caso sejam criados ficheiros ou directórios novos, fazer '''git add ficheiro1 ficheiro2 ... ficheiroN''' (adicionar novos ficheiros/directorias ao projecto); | ||
Latest revision as of 12:34, 14 April 2025
| 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 Compiladores):
|
|
Processo de avaliação (ver informação completa em Avaliação do Projecto):
|
| Material de Uso Obrigatório |
|---|
| As bibliotecas CDK e RTS de apoio ao desenvolvimento do projecto são de uso obrigatório: |
|
| A máquina virtual, fornecida para desenvolvimento do projecto, já contém todo o material de apoio. |
| Uso Obrigatório: Repositório GIT |
| Apenas se consideram para avaliação os projectos existentes no repositório GIT oficial. Apenas se considera para avaliação o ramo main.
Trabalhos não presentes no repositório no final do prazo têm classificação 0 (zero) (não são aceites outras formas de entrega). Não são admitidas justificações para atrasos em sincronizações do repositório. A indisponibilidade temporária do repositório, desde que inferior a 24 horas, não justifica atrasos na submissão de um trabalho. |
Os repositórios GIT para os projectos (um por grupo) já contêm versões iniciais do projecto.
Localização
Os repositórios estão disponíveis no Gitlab da RNL em:
O conteúdo do repositório pode ser manipulado com o comando git ou com qualquer outro cliente compatível.
Modo de Acesso
O acesso ao serviço GitLab da RNL é realizado com as credenciais IST (à la Fénix)
Todos os alunos do IST têm de ter credenciais válidas para poderem ser avaliados na disciplina.
Conteúdo e Estrutura do Repositório
Cada projecto no repositório contém inicialmente o compilador da linguagem Simple, superficialmente transformado para permitir o início do desenvolvimento do compilador da linguagem a implementar (isto significa que a linguagem é ainda a original, embora o compilador e as suas estruturas usem o novo nome em lugar de "simple").
A makefile pode precisar de ser adaptada (variáveis indicadas), mas não deve ser substancialmente alterada.
Breve descrição da estrutura de directórios (abaixo de udf):
- ast (directoria que contém as classes dos nós da árvore sintáctica abstracta - padrão Composite)
- targets (directoria que contém as classes de processamento semântico - padrão Visitor)
Note-se que todo o projecto é compilado pela Makefile na directoria de base.
Cuidados a ter na Utilização do Repositório GIT
NÃO FAZER
- git init (não é necessário: o repositório já existe)
FAZER
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:
- git clone git@gitlab.rnl.tecnico.ulisboa.pt:leic-a-co25/prj/000.git (permite obter uma cópia local contendo os ficheiros, no exemplo, do projecto do grupo 000);
- Editar/adicionar material do/ao projecto;
- Caso sejam criados ficheiros ou directórios novos, fazer git add ficheiro1 ficheiro2 ... ficheiroN (adicionar novos ficheiros/directorias ao projecto);
- git pull (antes de enviar alteração locais para o repositório, verificar se há actualizações remotas a incorporar na cópia local e que não foi esquecido nenhum ficheiro importante: voltar a 3 até terem sido todos adicionados)
- git status (verificar a situação na cópia local)
- git commit -am "Mensagem de commit." (registar alterações na cópia local)
- git push (enviar alterações para o GitLab -- sem este passo, não é realizada a entrega do projecto)
Observações importantes
- 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 teste prático: para activar estes acessos, consultar o self-service do CIIST (DSI). Em caso de dificuldade, consultar o corpo docente.
- A estrutura do projecto no GIT deve ser mantida como apresentado.
- Em caso de dúvidas, consultar o corpo docente.
Agradece-se a comunicação de eventuais problemas.