docs/project_documentation/DEV_GUIDE.md

2.1 KiB

👩‍💻 Guida per gli Sviluppatori

Benvenuto nel progetto! Questa guida ti spiega come collaborare in modo ordinato e sicuro usando Git e GitHub.


🧰 Requisiti

  • Avere Git installato
  • Avere Nodejs installato
  • Accesso al repository (richiedilo al mantainer)
  • Account GitLab

🚀 Passaggi per lavorare sul progetto

1. Clona il repository e avvia il server di sviluppo

git clone https://gitlab.tecnopackspa.it/tp-docs/tp-docs.git
cd tp-docs
npm install
npm start

2. Crea un nuovo branch per il tuo lavoro

Non lavorare mai direttamente su master.

git checkout -b feature/nome-funzionalità

Esempi:

  • feature/login-page
  • bugfix/correzione-header
  • hotfix/errore-build

3. Lavora sul codice

Aggiungi/modifica i file come necessario. Quando sei pronto per salvare i tuoi cambiamenti:

git add .
git commit -m "Descrizione chiara delle modifiche"

4. Sincronizzati con master (facoltativo ma consigliato)

Prima di pushare, puoi aggiornare il tuo branch con le ultime modifiche da master:

git checkout master
git pull origin master
git checkout feature/nome-funzionalità
git merge master

5. Push del branch remoto

git push origin feature/nome-funzionalità

6. Crea una Merge Request (MR)

Vai su GitLab:

  1. Apri il repository
  2. GitLab ti proporrà automaticamente di creare una MR
  3. Assicurati che la base sia master
  4. aggiungi titolo, descrizione e tagga un revisore (es: @nomeutente)

7. Rispondi ai commenti e correggi

  • Se il mantainer lascia dei commenti, aggiorna il codice e fai nuovi commit.
  • La MR si aggiornerà automaticamente.

8. Una volta approvata…

  • Il mantainer eseguirà il merge della MR nel branch master.
  • Dopo il merge, puoi cancellare il branch:
git branch -d feature/nome-funzionalità

Buone pratiche

  • Commits chiari e frequenti.
  • Branch con nomi espliciti.
  • MR brevi e mirate.
  • Segui gli standard di codice del team (linting, formattazione).

📌 In caso di dubbi

Contatta il mantainer del progetto o consulta la documentazione interna.