FLL/README.md

146 lines
2.9 KiB
Markdown

# Indice
<!---toc start-->
- [Indice](#indice)
- [Configurazione iniziale](#configurazione-iniziale)
- [Installare UV](#installare-uv)
- [Clonare la repo](#clonare-la-repo)
- [Attivare il virtual environment di uv](#attivare-il-virtual-environment-di-uv)
- [Aggiornare il venv con le impostazioni del pyproject.toml](#aggiornare-il-venv-con-le-impostazioni-del-pyprojecttoml)
- [Per sicurezza installare i tool anche globalmente](#per-sicurezza-installare-i-tool-anche-globalmente)
- [Impostare il proprio nome](#impostare-il-proprio-nome)
- [Impostare l'upstream](#impostare-lupstream)
- [Impostare check e formatting prima dei push](#impostare-check-e-formatting-prima-dei-push)
- [Comandi](#comandi)
- [Python](#python)
- [Eseguire il codice sul robot](#eseguire-il-codice-sul-robot)
- [Git](#git)
- [Pullare modifiche dal server](#pullare-modifiche-dal-server)
- [Stagare file modificati](#stagare-file-modificati)
- [Committare le modifiche](#committare-le-modifiche)
- [Pushare le modifiche al server](#pushare-le-modifiche-al-server)
<!---toc end-->
# Configurazione iniziale
> [!IMPORTANT]
> Eseguire tutti i comandi nella cartella clonata (eccetto installazione di UV e clone della repo)
## Installare UV
🐧 Linux / 🍎 macOS
```bash
curl -LsSf https://astral.sh/uv/install.sh | sh
```
🪟 Windows
```powershell
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
```
## Clonare la repo
```bash
git clone https://git.latentspace.cloud/senpai/FLL
# la prima volta chiederà username e password
```
## Attivare il virtual environment di uv
🐧 Linux / 🍎 macOS
```bash
source .venv/bin/activate
```
🪟 Windows
```powershell
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process -Force
./venv/Scripts/activate.ps1
```
### Aggiornare il venv con le impostazioni del pyproject.toml
```bash
uv sync
```
### Per sicurezza installare i tool anche globalmente
```bash
uv tool install ruff
uv tool install lefthook
```
## Impostare il proprio nome
```bash
git config user.name "tuo_nome"
git config user.email "tuo_nome@latentspace.cloud"
```
## Impostare l'upstream
```bash
git push -u origin main
```
## Impostare check e formatting prima dei push
```bash
lefthook install
```
# Comandi
## Python
### Eseguire il codice sul robot
```bash
pybricksdev run ble <nome_file.py>
```
Se si hanno più robot specificare il nome
```bash
pybricksdev run ble --name <nome_robot> <nome_file.py>
```
## Git
### Pullare modifiche dal server
```bash
git pull
```
### Stagare file modificati
```bash
# singoli file
git add <nome_file1> <nome_file2>
# tutti i file
git add .
# con glob
git add *.py
```
### Committare le modifiche
Nel messaggio di commit specificare cosa è stato cambiato nei file.
```bash
git commit -m "messaggio di commit"
```
### Pushare le modifiche al server
```bash
git push
```