Aan de slag¶
Belangrijkste onderdelen¶
Bij het werken met Odoo.sh is het belangrijk om inzicht te hebben in de belangrijkste onderdelen:
Hoewel ze allemaal met elkaar verbonden zijn, speelt elk onderdeel een specifieke rol bij de ontwikkeling en implementatie van Odoo-applicaties. Samen vormen ze een samenhangende pijplijn van codeontwikkeling tot live zakelijk gebruik.
GitHub-repository¶
Een GitHub-repository is vergelijkbaar met een map op je computer die alle bestanden en mappen voor een specifiek project bevat. Het verschil is dat deze op GitHub is opgeslagen en door meerdere personen op verschillende computers kan worden geopend en bewerkt.
Met andere woorden: een GitHub-repository is een plek waar je de bestanden van je project kunt opslaan en delen met anderen, zodat zij kunnen samenwerken, wijzigingen kunnen aanbrengen en kunnen bijdragen aan je project. Bovendien worden alle wijzigingen in je project door de tijd heen bijgehouden, zodat je indien nodig eenvoudig kunt terugkeren naar een eerdere versie.
Daarnaast biedt GitHub veel functies om je project te beheren, zoals het bijhouden van issues, pull requests en code reviews. Het is een krachtig hulpmiddel voor het beheren van en samenwerken aan softwareprojecten en wordt wereldwijd door ontwikkelaars gebruikt. Het is een versiebeheerde omgeving waarin de broncode van de Odoo-applicaties wordt opgeslagen. Het houdt elke wijziging bij, ondersteunt samenwerking en kan openbaar of privé zijn.
Odoo.sh-project¶
Een Odoo.sh-project is een Platform as a Service (PaaS) dat integreert met GitHub en gestroomlijnde ontwikkeling, tests en implementatie van Odoo-applicaties mogelijk maakt. Het bevat tools zoals geautomatiseerde back-ups, staging-omgevingen en continue integratiepijplijnen.
Odoo-database¶
Een Odoo-database slaat alle operationele gegevens op die door Odoo-applicaties worden gebruikt en gegenereerd, zoals bedrijfsgegevens, configuraties en gebruikersgegevens.
Gebruikerstypen¶
Odoo.sh omvat verschillende soorten gebruikers, elk met een specifieke rol in de levenscyclus van het project:
GitHub-gebruikers: ontwikkelaars met toegang tot de GitHub-repository die aan het Odoo.sh-project is gekoppeld. Toegang tot de repository maakt iemand niet automatisch een medewerker van het Odoo.sh-project.
Odoo.sh-medewerkers: personen die het Odoo.sh-project beheren. Elke medewerker moet aan een GitHub-gebruiker zijn gekoppeld. Medewerkers zijn echter niet hetzelfde als databasegebruikers.
Databasegebruikers: eindgebruikers van de geïmplementeerde Odoo-database. Zij communiceren met het live systeem, maar zijn niet betrokken bij de ontwikkeling of het projectbeheer.
Technische concepten¶
Bij het werken met Odoo.sh is het ook belangrijk om enkele technische concepten te begrijpen:
Een repository forken¶
Het forken van een repository op GitHub houdt in dat je een kopie maakt van de repository van iemand anders op je eigen account. Hierdoor kun je wijzigingen aanbrengen in de repository zonder de originele versie te beïnvloeden.
Wanneer je een repository forkt, maak je je eigen kopie van de repository, inclusief alle bestanden en mappen in de originele repository. Vervolgens kun je wijzigingen aanbrengen in de bestanden in je kopie van de repository en deze committen, net zoals je bij elke andere repository zou doen.
Het voordeel van het forken van een repository is dat je wijzigingen in de code kunt aanbrengen zonder de oorspronkelijke versie te beïnvloeden. Dit is handig wanneer je wilt experimenteren met nieuwe functies of bugs in andermans code wilt oplossen. Je kunt de geforkte repository ook als startpunt voor je project gebruiken en waar nodig wijzigingen aanbrengen.
Zodra je wijzigingen hebt aangebracht in de geforkte repository, kun je een pull request indienen bij de eigenaar van de oorspronkelijke repository met het verzoek om je wijzigingen weer samen te voegen in diens repository. Dit is een gebruikelijke aanpak voor opensourceprojecten om bijdragen van andere ontwikkelaars te accepteren, en het kan een geweldige manier zijn om betrokken te raken bij de community en je codeervaardigheden te verbeteren.
Een commit pushen¶
Wanneer je wijzigingen aanbrengt in een of meerdere bestanden in een Git-repository op je lokale computer, worden die wijzigingen als uncommitted beschouwd. Met andere woorden: Git weet dat er wijzigingen zijn aangebracht, maar ze zijn nog niet officieel opgeslagen of vastgelegd.
Om die wijzigingen op te slaan en toe te voegen aan de Git-repository, moet je een commit aanmaken. Een commit is een Snapshot van de wijzigingen die je op een bepaald tijdstip in de bestanden hebt aangebracht. Het legt vast welke wijzigingen zijn aangebracht, door wie en wanneer.
Zodra je een commit hebt aangemaakt, kun je deze pushen naar een externe repository, zoals een repository die op GitHub wordt gehost. Het pushen van een commit betekent dat je de wijzigingen die je in de commit hebt aangebracht vanuit je lokale repository naar de externe repository stuurt, zodat anderen ze kunnen zien en gebruiken.
Kort samengevat betekent het pushen van een commit dat je de wijzigingen die je in de bestanden in je Git-repository hebt aangebracht vanaf je lokale computer naar een externe repository stuurt. Het is een manier om je wijzigingen met anderen te delen en samen te werken aan een project.
Een filiaal samenvoegen¶
Het samenvoegen van een filiaal met een ander is het proces waarbij de wijzigingen die in het ene filiaal zijn aangebracht worden gecombineerd in het andere. Stel dat je bijvoorbeeld een nieuw filiaal met de naam feature-branch hebt gemaakt om aan een nieuwe functie voor je project te werken. Zodra je klaar bent met het aanbrengen van wijzigingen in dit filiaal, kun je die wijzigingen weer samenvoegen in het hoofdfiliaal (vaak het master- of main-filiaal genoemd).
Wanneer je een filiaal samenvoegt, onderzoekt Git de wijzigingen in beide filialen en probeert deze te combineren. Als er conflicten zijn tussen de wijzigingen die in de twee filialen zijn aangebracht, vraagt Git je om deze (qua code) op te lossen voordat de samenvoeging wordt voltooid.