Git a konvence¶
Git workflow¶
Projekt používá feature branch workflow:
# Vytvoření větve z main
git checkout main && git pull
git checkout -b feature/název-funkce
# Práce a commity
git add .
git commit -m "feat: popis změny"
# Push a PR
git push origin feature/název-funkce
# → Vytvořte Pull Request na GitHubu
Konvence větví¶
| Prefix | Účel |
|---|---|
feature/ |
Nová funkcionalita |
fix/ |
Oprava chyby |
docs/ |
Dokumentace |
refactor/ |
Refaktoring bez změny chování |
AM/ |
Starší konvence (legacy) |
Konvence commit zpráv¶
Formát: <typ>: <popis v češtině>
| Typ | Kdy |
|---|---|
feat: |
Nová funkce |
fix: |
Oprava chyby |
docs: |
Dokumentace |
refactor: |
Refaktoring |
test: |
Testy |
chore: |
Build, konfigurace |
C# konvence¶
- Jazyk komentářů, názvů metod a proměnných: čeština (UI text) / angličtina (kód)
- Přístupové modifikátory: explicitní vždy
- Async/await: vždy pro I/O operace, metody s suffixem
Async - Nullable reference types: povoleno,
?explicitně - Result pattern: pro všechny servisní operace
Pojmenování¶
// Třídy a interface
public class ArticleDataService { }
public interface IArticleDataService { }
// MAUI ViewModel properties
[ObservableProperty]
private ObservableCollection<Article> _articles = []; // generuje Articles
// Async metody
public async Task<Result<Article>> GetByIdAsync(long id) { }
Konfigurace .gitignore¶
Soubory které se NESMÍ commitovat:
- appsettings.Development.json (obsahuje hesla)
- *.pfx, *.key (certifikáty)
- .claude/settings.local.json
Šablona pro development config: