Help me een Git beste praktijken gids voor mijn team te maken
description
Door een gids voor Git beste praktijken te maken, zal mijn team profiteren van verbeterde samenwerking, duidelijkere communicatie en minder fouten in ons versiebeheerproces. Het zal een cultuur van consistentie en efficiëntie in onze ontwikkelworkflow bevorderen.
prompt
try_prompt
Ik wil een uitgebreide gids ontwikkelen voor het gebruik van Git binnen mijn team van {{team_grootte}} leden. Geef aanbevelingen over belangrijke gebieden om te behandelen, zoals branch na ... more
generate_helper
...
ai_answers
provider: openai
model: gpt-4.1-nano
Uitstekend initiatief! Een uitgebreide gids voor Git-gebruik helpt je team efficiënter en consistenter te werken. Hier zijn belangrijke gebieden om te behandelen, inclusief voorbeelden en tips:
1. Branch-naamgevingsconventies
- Doel: Consistente en duidelijke naamgeving voor eenvoudige identificatie.
- Aanbevelingen:
- Gebruik korte, beschrijvende namen:
- feature/nieuw-functie-naam
- bugfix/probleem-omschrijving
- hotfix/kritieke-fout
- release/version-nummer
- Voorbeeld:
- feature/gebruikersregistratie
- bugfix/login-fout
- Tips:
- Vermijd spaties; gebruik streepjes (-) of schuine strepen (/).
- Voeg indien nodig ticket- of issue-nummers toe:
feature/1234-verbetering-dashboard
2. Standarden voor commit-berichten
- Doel: Duidelijke communicatie over veranderingen.
- Aanbevelingen:
- Gebruik een korte, kernachtige titel (max. 50 tekens), gevolgd door een lege regel en een gedetailleerde beschrijving.
- Begin de titel met een werkwoord in de gebiedende wijs:
- Voeg, Fix, Verwijder, Verbeter, Refactor
- Voorbeeld:
```
Voeg gebruikersregistratie toe
Implementeer het registratieformulier en backend-verwerking.
```
- Tips:
- Gebruik de tegenwoordige tijd.
- Vermijd onduidelijke termen.
3. Samenwerkingstechnieken
- Branch management:
- Gebruik feature branches voor nieuwe functies.
- Gebruik develop/main als stabiele basis.
- Maak regelmatig pull requests voor code review.
- Code review:
- Laat teamleden elkaars werk controleren voordat het wordt samengevoegd.
- Gebruik duidelijke feedback.
- Merge-strategieën:
- Overweeg het gebruik van 'squash' voor een schonere geschiedenis.
- Gebruik 'rebase' voor een lineaire geschiedenis.
4. Workflow en best practices
- Regelmatig committen:
- Kleine, gerichte commits.
- Up-to-date blijven:
- Frequent pullen van de main of develop branch.
- Conflictoplossing:
- Communiceer met je team bij conflicten.
- Test na het oplossen van conflicten.
- Documentatie:
- Documenteer belangrijke beslissingen en procedures.
5. Automatisering en tools
- Gebruik CI/CD pipelines voor automatische tests en builds.
- Implementeer code formatteringshulpmiddelen.
- Gebruik Git hooks voor automatische checks.
6. Voorbeeld workflow:
1. Start vanaf main:
```
git checkout main
git pull origin main
```
2. Maak een feature branch:
```
git checkout -b feature/naam-van-functie
```
3. Commit je veranderingen:
```
git add .
git commit -m "Voeg gebruikersregistratie toe"
```
4. Push naar remote:
```
git push origin feature/naam-van-functie
```
5. Maak een pull request voor review.
6. Na goedkeuring, merge in main en verwijder de feature branch:
```
git checkout main
git pull origin main
git branch -d feature/naam-van-functie
git push origin --delete feature/naam-van-functie
```
Tips:
- Maak gebruik van protected branches om directe push naar hoofdbranches te voorkomen.
- Documenteer de workflow en afspraken in een teamhandboek.
Door deze gebieden zorgvuldig te behandelen en consistent toe te passen, zorgt je team voor een schone, overzichtelijke en efficiënte Git-werkstroom.
provider: deepseek
model: deepseek-chat
### Uitgebreide Git Gids voor Jouw Team
#### 1. **Branch Naamgevingsconventies**
Een consistente naamgeving helpt bij het organiseren en begrijpen van de doelstelling van elke branch.
**Aanbevolen structuur:**
- `feature/[ticket-nummer]-[korte-beschrijving]` (voor nieuwe functies)
- Voorbeeld: `feature/ISS-45-user-login`
- `bugfix/[ticket-nummer]-[korte-beschrijving]` (voor bugfixes)
- Voorbeeld: `bugfix/ISS-78-login-error`
- `hotfix/[korte-beschrijving]` (voor kritieke fixes in productie)
- Voorbeeld: `hotfix/cors-error`
- `release/[versienummer]` (voor release-voorbereidingen)
- Voorbeeld: `release/v1.2.0`
**Tips:**
- Gebruik alleen kleine letters en koppeltekens
- Houd beschrijvingen kort maar duidelijk
- Verwijder branches na merge om rommel te voorkomen
---
#### 2. **Commit Bericht Standaarden**
Duidelijke commit-berichten maken de geschiedenis leesbaar en onderhoudbaar.
**Aanbevolen formaat:**
```
[type]: [korte beschrijving]
[uitgebreide beschrijving (indien nodig)]
[footer met ticketverwijzing]
```
**Types:**
- `feat`: Nieuwe functionaliteit
- `fix`: Bug oplossing
- `docs`: Documentatie wijzigingen
- `style`: Opmaak (geen code impact)
- `refactor`: Code refactoring
- `test`: Test gerelateerd
- `chore`: Overige wijzigingen
**Voorbeeld:**
```
feat: gebruikersauthenticatie toevoegen
- JWT token implementatie
- Login/logout functionaliteit
- Beveiligde routes toegevoegd
Closes ISS-45
```
**Tips:**
- Begin met een werkwoord in tegenwoordige tijd
- Houd de eerste regel onder 50 karakters
- Gebruik de body voor details en motivatie
- Verwijs naar tickets waar relevant
---
#### 3. **Samenwerkingstechnieken**
**Basis Workflow:**
1. **Pull voor je begint:**
```bash
git checkout main
git pull origin main
```
2. **Nieuwe branch aanmaken:**
```bash
git checkout -b feature/ISS-45-user-login
```
3. **Regelmatig committen:**
```bash
git add .
git commit -m "feat: login form component"
```
4. **Up-to-date houden:**
```bash
git fetch origin
git rebase origin/main
```
5. **Code review:**
- Push je branch en maak een pull request aan
- Minimaal 1 teamlid moet reviewen
- Los eventuele opmerkingen op
6. **Merge:**
- Gebruik "squash and merge" voor feature branches
- Behoud een schone geschiedenis
---
#### 4. **Pull Request Richtlijnen**
**Template voor pull requests:**
```markdown
## Beschrijving
[Wat wordt er toegevoegd/opgelost?]
## Type wijziging
- [ ] Nieuwe feature (non-breaking change)
- [ ] Bug fix (non-breaking change)
- [ ] Breaking change (fix of feature die bestaande functionaliteit beïnvloedt)
## Test instructies
[Hoe kan dit getest worden?]
## Screenshots (indien van toepassing)
## Checklist
- [ ] Code is getest
- [ ] Documentatie is bijgewerkt
- [ ] Geen console errors
- [ ] Voldoet aan code standaarden
```
---
#### 5. **Handige Git Commands voor Jullie Team**
**Dagelijks gebruik:**
```bash
# Status controleren
git status
# Wijzigingen staged maken
git add -p
# Geschiedenis bekijken
git log --oneline --graph -10
# Wijzigingen van main binnenhalen
git pull --rebase origin main
```
**Conflict resolutie:**
```bash
# Bekijk conflicten
git status
# Los conflicten op in je editor
# Voeg opgeloste bestanden toe
git add .
# Ga verder met rebase
git rebase --continue
```
---
#### 6. **Best Practices voor Jullie Team**
**Code Kwaliteit:**
- Voer pre-commit hooks in voor code formatting
- Gebruik `.gitignore` voor node_modules, logs, etc.
- Houd commits klein en gefocust
**Communicatie:**
- Bespreek grote wijzigingen voor implementatie
- Gebruik duidelijke beschrijvingen in pull requests
- Review op vaste momenten (bijv. dagelijks om 15:00)
**Backup:**
- Push werk regelmatig naar de remote repository
- Gebruik tags voor belangrijke releases
---
#### 7. **Starter Checklist voor Nieuwe Features**
1. [ ] Ticket aanmaken in jullie project management tool
2. [ ] Main branch updaten
3. [ ] Nieuwe feature branch aanmaken
4. [ ] Code ontwikkelen met regelmatige commits
5. [ ] Rebase op main voor publicatie
6. [ ] Pull request aanmaken met duidelijke beschrijving
7. [ ] Code review door teamgenoot
8. [ ] Wijzigingen mergen in main
9. [ ] Branch verwijderen (lokaal en remote)
Deze gids zal jullie team helpen een gestructureerde en efficiënte Git workflow te behouden. Pas waar nodig aan op jullie specifieke behoeften!

