-
Notifications
You must be signed in to change notification settings - Fork 0
Versie Beheer
Hoe werken jullie met git? Wat voor conventions houden jullie aan voor naamgeving van commits en branches? Waar maken jullie branches voor en wanneer worden deze weer gemerged? Waar staat de final version? en wat doen jullie als er een conflict is? Wie is waar verantwoordelijk voor? Werken jullie misschien met pull requests? Wie keurt deze goed? Welke assets worden gecommit? en wat houden jullie buiten je repo? Hoe gaan jullie om met grote files?
etc...
Als er een Pull Request is aangemaakt dan kijk je die nooit zelf na. Iemand anders gaat altijd het werk nakijken je kan iemand assigne via de Pull Requets view onder het tabje "Review". Iedereen kan een pull request nakijken en goedkeuren als het niet je eigen is.
Je test altijd de branch uit. Om te zien of alles goed werkt en of er spraken is van een bug.
- main, daar komt alleen stabiele versies te komen. Patches van hotfixes ook. Als we een merge maken vanaf main naar develop is dat altijd een squash merge!
- develop, hier komt alle features en hotfixes terecht niet in normale merges, niet squash merges!
- feature, is het een nieuw functionaliteit & design dan maak je een feature branch aan. ("feature/naam")
- hotfix, als der een bug is dan maak je een hotfix branch aan. Na het oplossen stuur je dit naar de develop branch. ("hotfix/bug")
- refactor, deze gebruik je alleen als je code wilt gaan herschrijven wat beter kan qua performance of leesbaarheid. ("refactor/movement")
Geen enkele branch moet ooit hoofdletters of spaties hebben! Als je voor je branch meerdere woorden gebruikt. Maak je gebruik van "-" bijvoobeeld; feature/player-movement
Commits zijn altijd wat je hebt gemaakt en in het engels.
Als je alleen een PlayerMovement script maakt is de commit "PlayerMovement.cs created" of "PlayerMovement script created".
Als het een functionaliteit is zoals dat de PlayerMovement werkt. Dan zeg je "PlayerMovement worked!" of "PlayerMovement Implemented".
En zo maar door!
grote files worden niet mee gecommit en moeten in de gitignore! Bepaalde packages zoals, TextMeshPro en Pathfinding kan wel. Oude asasets die niet meer worden gebruikt kunnen verwijdered worden!
Als je een Pull Request aanmaakt dan krijg je waarschijnlijk dit "Merge pull request #1 from Naam/feature/feature-naam" de "Naam" na het word "from" kan weg zodat, je dit krijgt "Merge pull request #1from /feature/feature-naam"
Note
We maken altijd een Pull Request als we het naar develop of main gaan sturen!
Note
Voordat de Pull Request kan worden goed gekeurd moet eerst develop in je current branch worden gemerged zodat, we conflicts kunnen voorkomen.
Note
Onstaat er een conflict? op basis van wat changes zijn moet je een keuze maken tussen changes incoming, current of both.
Warning
Als je voor current kiest pak je, je eigen changes. Deze gebruik je alleen als je zeker weet dat al de incoming changes irrelevant zijn. Ga dan ook aan je collega's vragen of die changes noodzakelijk zijn.
Warning
Als je voor Incoming kiest pak je de changes van de incoming branch die je naar jouw branch hebt gemerged. Alleen gebruiken als de changes die jij hebt gemaakt die daarmee conflicten zeker van weet dat die onnodige changes waren.
Warning
Als je both kiest kan het zo zijn dat jou of de ander zijn toepassing niet meer werken. stem goed met elkaar dan af en ga pair programme om het probleem zo goed mogelijk optelossen.