Document series command namespace
This commit is contained in:
@@ -41,8 +41,9 @@ Sciezki i domyslne ustawienia sa trzymane w `workspace.json`.
|
||||
2. Listowanie i pobieranie kart pracy
|
||||
|
||||
`rvctl` czyta serie i karty z workspace, pomaga wybrac material do pracy
|
||||
oraz przygotowuje remotes potrzebne do repo odpowiedzi. Szczegoly komend
|
||||
`list-series`, `list-cards` i `submission` sa w `doc/rvctl.md`.
|
||||
oraz przygotowuje remotes potrzebne do repo odpowiedzi. Docelowy model
|
||||
namespace `series` jest w `doc/series.md`; aktualne komendy CLI sa opisane
|
||||
w `doc/rvctl.md`.
|
||||
|
||||
3. Uruchamianie srodowiska programistycznego w kontenerach
|
||||
|
||||
@@ -106,6 +107,7 @@ repo, zanim narzedzie cos zmieni.
|
||||
|
||||
- `doc/rvctl.md` - komendy CLI, przelaczniki i przyklady uzycia
|
||||
- `doc/tokens.md` - model tokenow, synchronizacja remote <-> store
|
||||
- `doc/series.md` - docelowy model komend dla serii i kart pracy
|
||||
- `doc/tokens.schema.json` - schemat `tokens/tokens.json`
|
||||
- `doc/workspace.md` - krotki opis konfiguracji workspace
|
||||
|
||||
|
||||
+190
@@ -0,0 +1,190 @@
|
||||
# Series
|
||||
|
||||
Ten dokument opisuje docelowy model komend `rvctl` do pracy z seriami i
|
||||
kartami pracy.
|
||||
|
||||
## Zasada
|
||||
|
||||
Komendy kart pracy dzielimy na dwa poziomy:
|
||||
|
||||
- `series` - operacje na serii jako calosci
|
||||
- `series cards` - operacje na kartach w ramach serii
|
||||
|
||||
Uzywamy `cards`, a nie `card`, bo namespace opisuje kolekcje kart i jest
|
||||
spojny z pluralnym `tokens`.
|
||||
|
||||
## Szybki Flow
|
||||
|
||||
Typowy przeplyw pracy:
|
||||
|
||||
```bash
|
||||
./rvctl tokens compare
|
||||
./rvctl series list
|
||||
./rvctl series show inf
|
||||
./rvctl series fetch inf
|
||||
./rvctl series cards list inf
|
||||
./rvctl series cards show inf 03
|
||||
./rvctl series cards tasks list inf 03
|
||||
./rvctl series cards tasks show inf 03 task1
|
||||
./rvctl series cards fetch inf 03
|
||||
./rvctl series cards submission inf 03 --class 4i --nick u1
|
||||
```
|
||||
|
||||
## Serie
|
||||
|
||||
### `series list`
|
||||
|
||||
Listuje dostepne serie w workspace.
|
||||
|
||||
```bash
|
||||
./rvctl series list
|
||||
```
|
||||
|
||||
Przykladowy wynik:
|
||||
|
||||
```text
|
||||
series cards workspace
|
||||
------ ----- -------------------------------
|
||||
inf 12 ~/dev/workspace/rv/series/inf
|
||||
```
|
||||
|
||||
### `series show SERIES`
|
||||
|
||||
Pokazuje informacje o serii jako calosci.
|
||||
|
||||
```bash
|
||||
./rvctl series show inf
|
||||
```
|
||||
|
||||
Typowe pola:
|
||||
|
||||
```text
|
||||
series inf
|
||||
workspace_path ~/dev/workspace/rv/series/inf
|
||||
source_path ~/dev/edu/repos/rv/series/inf
|
||||
cards_count 12
|
||||
cards 01 02 03 ...
|
||||
```
|
||||
|
||||
### `series fetch SERIES`
|
||||
|
||||
Pobiera albo aktualizuje cala serie w workspace.
|
||||
|
||||
```bash
|
||||
./rvctl series fetch inf
|
||||
```
|
||||
|
||||
Ta komenda pracuje na wszystkich kartach w serii. Do pobrania jednej karty
|
||||
sluzy `series cards fetch`.
|
||||
|
||||
## Karty
|
||||
|
||||
### `series cards list SERIES`
|
||||
|
||||
Listuje karty w wybranej serii.
|
||||
|
||||
```bash
|
||||
./rvctl series cards list inf
|
||||
```
|
||||
|
||||
Przykladowy wynik:
|
||||
|
||||
```text
|
||||
series card repo
|
||||
------ ---- ------------------------------------
|
||||
inf 03 lab-rv32i-strlen-bss-data-stack
|
||||
```
|
||||
|
||||
### `series cards show SERIES CARD`
|
||||
|
||||
Pokazuje informacje o konkretnej karcie.
|
||||
|
||||
```bash
|
||||
./rvctl series cards show inf 03
|
||||
```
|
||||
|
||||
Typowe pola:
|
||||
|
||||
```text
|
||||
series inf
|
||||
card 03
|
||||
workspace_path ~/dev/workspace/rv/series/inf/03
|
||||
source_path ~/dev/edu/repos/rv/series/inf/03
|
||||
source_repo edu-inf/lab-rv32i-strlen-bss-data-stack
|
||||
source_remote r1
|
||||
answer_remote a1
|
||||
```
|
||||
|
||||
### `series cards fetch SERIES CARD`
|
||||
|
||||
Pobiera albo aktualizuje jedna karte w workspace.
|
||||
|
||||
```bash
|
||||
./rvctl series cards fetch inf 03
|
||||
```
|
||||
|
||||
### `series cards submission SERIES CARD`
|
||||
|
||||
Pokazuje albo stosuje konfiguracje repo odpowiedzi dla karty.
|
||||
|
||||
```bash
|
||||
./rvctl series cards submission inf 03 --class 4i --nick u1
|
||||
./rvctl series cards submission inf 03 --class 4i --nick u1 --apply
|
||||
```
|
||||
|
||||
Bez `--apply` komenda tylko pokazuje plan. Z `--apply` ustawia remotes potrzebne
|
||||
do pracy z repo odpowiedzi.
|
||||
|
||||
## Zadania W Karcie
|
||||
|
||||
Zadania sa czescia karty, dlatego trzymamy je pod `series cards tasks`.
|
||||
|
||||
### `series cards tasks list SERIES CARD`
|
||||
|
||||
Listuje zadania dostepne w konkretnej karcie.
|
||||
|
||||
```bash
|
||||
./rvctl series cards tasks list inf 03
|
||||
```
|
||||
|
||||
Przykladowy wynik:
|
||||
|
||||
```text
|
||||
series card task path
|
||||
------ ---- ----- --------------------------------------
|
||||
inf 03 task1 ~/dev/workspace/rv/series/inf/03/task1
|
||||
inf 03 task2 ~/dev/workspace/rv/series/inf/03/task2
|
||||
```
|
||||
|
||||
### `series cards tasks show SERIES CARD TASK`
|
||||
|
||||
Pokazuje informacje o konkretnym zadaniu w karcie.
|
||||
|
||||
```bash
|
||||
./rvctl series cards tasks show inf 03 task1
|
||||
```
|
||||
|
||||
Typowe pola:
|
||||
|
||||
```text
|
||||
series inf
|
||||
card 03
|
||||
task task1
|
||||
workspace_path ~/dev/workspace/rv/series/inf/03/task1
|
||||
card_path ~/dev/workspace/rv/series/inf/03
|
||||
```
|
||||
|
||||
Na tym poziomie nie wprowadzamy osobnego `fetch`: zadania sa pobierane razem z
|
||||
karta przez `series cards fetch` albo razem z cala seria przez `series fetch`.
|
||||
|
||||
## Aliasowanie Starych Komend
|
||||
|
||||
Stare komendy mozna zostawic jako aliasy kompatybilnosci:
|
||||
|
||||
```text
|
||||
list-series -> series list
|
||||
list-cards inf -> series cards list inf
|
||||
submission inf 03 --class K --nick N -> series cards submission inf 03 --class K --nick N
|
||||
```
|
||||
|
||||
Dokumentacja i nowe przyklady powinny promowac namespace `series`.
|
||||
Reference in New Issue
Block a user