Dbx gebruiken met Visual Studio Code
Belangrijk
Deze documentatie is buiten gebruik gesteld en wordt mogelijk niet bijgewerkt.
Databricks raadt u aan om Databricks Asset Bundles te gebruiken in plaats van dbx
databricks Labs. Zie Wat zijn Databricks-assetbundels? en migreer van dbx naar bundels.
Als u Azure Databricks wilt gebruiken met Visual Studio Code, raadpleegt u het artikel Databricks-extensie voor Visual Studio Code.
In dit artikel wordt een codevoorbeeld op basis van Python beschreven waarmee u kunt werken in elke met Python compatibele IDE. In dit artikel wordt beschreven hoe u met dit codevoorbeeld in Visual Studio Code kunt werken, wat de volgende productiviteitsfuncties voor ontwikkelaars biedt:
- Codevoltooiing
- Linting
- Testen.
- Foutopsporing van codeobjecten waarvoor geen realtime verbinding met externe Azure Databricks-resources is vereist.
In dit artikel wordt dbx door Databricks Labs samen met Visual Studio Code gebruikt om het codevoorbeeld te verzenden naar een externe Azure Databricks-werkruimte. dbx
Geeft Azure Databricks opdracht om werkstromen te plannen en te organiseren om de ingediende code uit te voeren op een Azure Databricks-taakcluster in die werkruimte.
U kunt populaire Git-providers van derden gebruiken voor versiebeheer en continue integratie en continue levering of continue implementatie (CI/CD) van uw code. Voor versiebeheer zijn de volgende Git-providers:
- GitHub
- Bitbucket
- GitLab
- Azure DevOps (niet beschikbaar in Azure China-regio's)
- AWS CodeCommit
- GitHub AE
Voor CI/CD ondersteunt dbx
u de volgende CI/CD-platforms:
Om te laten zien hoe versiebeheer en CI/CD kunnen werken, wordt in dit artikel beschreven hoe u Visual Studio Code dbx
en dit codevoorbeeld gebruikt, samen met GitHub en GitHub Actions.
Codevoorbeeldvereisten
Als u dit codevoorbeeld wilt gebruiken, moet u het volgende hebben:
- Een Azure Databricks-werkruimte in uw Azure Databricks-account.
- Een GitHub-account. Maak een GitHub-account als u er nog geen hebt.
Daarnaast moet u op uw lokale ontwikkelcomputer het volgende hebben:
Python versie 3.8 of hoger.
U moet een versie van Python gebruiken die overeenkomt met de versie die is geïnstalleerd op uw doelclusters. Als u de versie van Python wilt ophalen die op een bestaand cluster is geïnstalleerd, kunt u de webterminal van het cluster gebruiken om de
python --version
opdracht uit te voeren. Zie ook de sectie Systeemomgeving in de releaseversies van Databricks Runtime en compatibiliteit voor de Databricks Runtime-versie voor uw doelclusters. In elk geval moet de versie van Python 3.8 of hoger zijn.Als u de versie van Python wilt ophalen waarnaar momenteel wordt verwezen op uw lokale computer, voert u deze uit
python --version
vanuit uw lokale terminal. (Afhankelijk van hoe u Python instelt op uw lokale computer, moet u mogelijk worden uitgevoerdpython3
in plaats vanpython
in dit artikel.) Zie ook Een Python-interpreter selecteren.pip.
pip
wordt automatisch geïnstalleerd met nieuwere versies van Python. Als u wilt controleren ofpip
deze al is geïnstalleerd, voert u deze uitpip --version
vanuit uw lokale terminal. (Afhankelijk van hoe u Python ofpip
op uw lokale computer instelt, moet u mogelijk worden uitgevoerdpip3
in plaats vanpip
in dit artikel.)dbx versie 0.8.0 of hoger. U kunt het
dbx
pakket installeren vanuit de Python Package Index (PyPI) door uit te voerenpip install dbx
.Notitie
U hoeft nu niet te installeren
dbx
. U kunt deze later installeren in de sectie voor het instellen van het codevoorbeeld.Een methode voor het maken van virtuele Python-omgevingen om ervoor te zorgen dat u de juiste versies van Python en pakketafhankelijkheden in uw
dbx
projecten gebruikt. In dit artikel wordt pipenv behandeld.De Databricks CLI versie 0.18 of lager, ingesteld met verificatie.
Notitie
U hoeft de verouderde Databricks CLI (Databricks CLI versie 0.17) nu niet te installeren. U kunt deze later installeren in de sectie voor het instellen van het codevoorbeeld. Als u deze later wilt installeren, moet u in plaats daarvan verificatie instellen.
De Python-extensie voor Visual Studio Code.
De Extensie voor pull-aanvragen en problemen van GitHub voor Visual Studio Code.
Git.
Over het codevoorbeeld
Het Python-codevoorbeeld voor dit artikel, dat beschikbaar is in de opslagplaats databricks/ide-best practices in GitHub, doet het volgende:
- Haalt gegevens op uit de opslagplaats owid/covid-19-data in GitHub.
- Hiermee filtert u de gegevens voor een specifieke ISO-landcode.
- Hiermee maakt u een draaitabel op basis van de gegevens.
- Voert gegevensopschoning uit op de gegevens.
- Modulariseert de codelogica in herbruikbare functies.
- Eenheid test de functies.
- Biedt
dbx
projectconfiguraties en -instellingen om de code in te schakelen voor het schrijven van de gegevens naar een Delta-tabel in een externe Azure Databricks-werkruimte.
Het codevoorbeeld instellen
Nadat u de vereisten voor dit codevoorbeeld hebt ingesteld, voert u de volgende stappen uit om het codevoorbeeld te gaan gebruiken.
Notitie
Deze stappen omvatten het instellen van dit codevoorbeeld voor CI/CD niet. U hoeft CI/CD niet in te stellen om dit codevoorbeeld uit te voeren. Zie Uitvoeren met GitHub Actions als u later CI/CD wilt instellen.
Stap 1: Een virtuele Python-omgeving maken
Maak vanuit de terminal een lege map die een virtuele omgeving voor dit codevoorbeeld bevat. Deze instructies gebruiken een bovenliggende map met de naam
ide-demo
. U kunt deze map elke gewenste naam geven. Als u een andere naam gebruikt, vervangt u de naam in dit artikel. Nadat u de map hebt gemaakt, gaat u naar de map en start u Visual Studio Code vanuit die map. Zorg ervoor dat u de punt (.
) na decode
opdracht opneemt.Voor Linux en macOS:
mkdir ide-demo cd ide-demo code .
Tip
Als u de fout
command not found: code
krijgt, raadpleegt u Starten vanaf de opdrachtregel op de Website van Microsoft.Voor Windows:
md ide-demo cd ide-demo code .
Klik in Visual Studio Code op de menubalk op Terminal weergeven>.
Voer vanuit de hoofdmap van de
ide-demo
map depipenv
opdracht uit met de volgende optie, waarbij<version>
de doelversie van Python is die u al lokaal hebt geïnstalleerd (en, in het ideale voorbeeld, een versie die overeenkomt met de versie van Python van uw doelclusters), bijvoorbeeld3.8.14
.pipenv --python <version>
Noteer de
Virtualenv location
waarde in de uitvoer van depipenv
opdracht, omdat u deze in de volgende stap nodig hebt.Selecteer de Python-doel-interpreter en activeer vervolgens de virtuele Python-omgeving:
Klik op de menubalk op Opdrachtpalet weergeven>, typ
Python: Select
en klik vervolgens op Python: Interpreter selecteren.Selecteer de Python-interpreter in het pad naar de virtuele Python-omgeving die u zojuist hebt gemaakt. (Dit pad wordt vermeld als de
Virtualenv location
waarde in de uitvoer van depipenv
opdracht.)Klik op de menubalk op Opdrachtpalet weergeven>, typ
Terminal: Create
en klik vervolgens op Terminal: Nieuwe terminal maken.Zorg ervoor dat de opdrachtprompt aangeeft dat u zich in de
pipenv
shell bevindt. Ter bevestiging ziet u iets zoals(<your-username>)
vóór de opdrachtprompt. Als u deze niet ziet, voert u de volgende opdracht uit:pipenv shell
Als u de shell wilt afsluiten, voert u de
pipenv
opdrachtexit
uit en verdwijnen de haakjes.
Zie Python-omgevingen gebruiken in VS Code in de documentatie van Visual Studio Code voor meer informatie.
Stap 2: Het codevoorbeeld klonen vanuit GitHub
- Open in Visual Studio Code de
ide-demo
map (Map bestand >openen) als deze nog niet is geopend. - Klik op Opdrachtpalet weergeven>, typ
Git: Clone
en klik vervolgens op Git: Klonen. - Voor De URL van de opslagplaats opgeven of een opslagplaatsbron kiezen, voert u in
https://github.com/databricks/ide-best-practices
- Blader naar de
ide-demo
map en klik op Opslagplaatslocatie selecteren.
Stap 3: De afhankelijkheden van het codevoorbeeld installeren
Installeer een versie van
dbx
en Databricks CLI versie 0.18 of lager die compatibel is met uw versie van Python. Voer hiervoor in Visual Studio Code vanuit uw terminal vanuit uwide-demo
map met eenpipenv
shell geactiveerd (pipenv shell
) de volgende opdracht uit:pip install dbx
Bevestig dat
dbx
dit is geïnstalleerd. Voer hiervoor de volgende opdracht uit:dbx --version
Als het versienummer wordt geretourneerd,
dbx
wordt geïnstalleerd.Als het versienummer lager is dan 0.8.0, voert u een upgrade
dbx
uit door de volgende opdracht uit te voeren en controleert u het versienummer opnieuw:pip install dbx --upgrade dbx --version # Or ... python -m pip install dbx --upgrade dbx --version
Wanneer u installeert
dbx
, wordt de verouderde Databricks CLI (Databricks CLI versie 0.17) ook automatisch geïnstalleerd. Voer de volgende opdracht uit om te controleren of de verouderde Databricks CLI (Databricks CLI versie 0.17) is geïnstalleerd:databricks --version
Als Databricks CLI versie 0.17 wordt geretourneerd, wordt de verouderde Databricks CLI geïnstalleerd.
Als u de verouderde Databricks CLI (Databricks CLI versie 0.17) niet hebt ingesteld met verificatie, moet u dit nu doen. Voer de volgende basisopdracht uit om te bevestigen dat verificatie is ingesteld om samenvattingsinformatie over uw Azure Databricks-werkruimte op te halen. Zorg ervoor dat u de slash (
/
) na dels
subopdracht opneemt:databricks workspace ls /
Als er een lijst met mapnamen op hoofdniveau voor uw werkruimte wordt geretourneerd, wordt verificatie ingesteld.
Installeer de Python-pakketten waarvoor dit codevoorbeeld afhankelijk is. Voer hiervoor de volgende opdracht uit vanuit de
ide-demo/ide-best-practices
map:pip install -r unit-requirements.txt
Controleer of de afhankelijke pakketten van het codevoorbeeld zijn geïnstalleerd. Voer hiervoor de volgende opdracht uit:
pip list
Als de pakketten die worden vermeld in de
requirements.txt
lijst enunit-requirements.txt
bestanden zich ergens in deze lijst bevinden, worden de afhankelijke pakketten geïnstalleerd.Notitie
De bestanden die worden vermeld,
requirements.txt
zijn bedoeld voor specifieke pakketversies. Voor betere compatibiliteit kunt u deze versies kruislings verwijzen naar het clusterknooppunttype dat u wilt gebruiken voor uw Azure Databricks-werkruimte voor het uitvoeren van implementaties later. Zie de sectie Systeemomgeving voor de Databricks Runtime-versie van uw cluster in releaseversies en compatibiliteit van Databricks Runtime.
Stap 4: Het codevoorbeeld voor uw Azure Databricks-werkruimte aanpassen
Pas de projectinstellingen van
dbx
de opslagplaats aan. Hiervoor wijzigt u in het.dbx/project.json
bestand de waarde van hetprofile
object inDEFAULT
de naam van het profiel dat overeenkomt met het profiel dat u hebt ingesteld voor verificatie met de verouderde Databricks CLI (Databricks CLI versie 0.17). Als u geen niet-standaardprofiel hebt ingesteld, laat ditDEFAULT
dan staan. Voorbeeld:{ "environments": { "default": { "profile": "DEFAULT", "storage_type": "mlflow", "properties": { "workspace_directory": "/Workspace/Shared/dbx/covid_analysis", "artifact_location": "dbfs:/Shared/dbx/projects/covid_analysis" } } }, "inplace_jinja_support": false }
Pas de implementatie-instellingen van het
dbx
project aan. Hiervoor wijzigt u in hetconf/deployment.yml
bestand de waarde van ennode_type_id
spark_version
objecten van10.4.x-scala2.12
enm6gd.large
naar de versietekenreeks en het clusterknooppunttype van Azure Databricks-runtime die u wilt gebruiken voor uw Azure Databricks-werkruimte voor het uitvoeren van implementaties.Als u bijvoorbeeld Databricks Runtime 10.4 LTS en een
Standard_DS3_v2
knooppunttype wilt opgeven:environments: default: workflows: - name: "covid_analysis_etl_integ" new_cluster: spark_version: "10.4.x-scala2.12" num_workers: 1 node_type_id: "Standard_DS3_v2" spark_python_task: python_file: "file://jobs/covid_trends_job.py" - name: "covid_analysis_etl_prod" new_cluster: spark_version: "10.4.x-scala2.12" num_workers: 1 node_type_id: "Standard_DS3_v2" spark_python_task: python_file: "file://jobs/covid_trends_job.py" parameters: ["--prod"] - name: "covid_analysis_etl_raw" new_cluster: spark_version: "10.4.x-scala2.12" num_workers: 1 node_type_id: "Standard_DS3_v2" spark_python_task: python_file: "file://jobs/covid_trends_job_raw.py"
Tip
In dit voorbeeld heeft elk van deze drie taakdefinities dezelfde spark_version
en node_type_id
dezelfde waarde. U kunt verschillende waarden gebruiken voor verschillende taakdefinities. U kunt ook gedeelde waarden maken en opnieuw gebruiken in taakdefinities, om het typen van fouten en codeonderhoud te verminderen. Zie het YAML-voorbeeld in de dbx
documentatie.
Het codevoorbeeld verkennen
Nadat u het codevoorbeeld hebt ingesteld, gebruikt u de volgende informatie voor meer informatie over de werking van de verschillende bestanden in de ide-demo/ide-best-practices
map.
Code modularisatie
Ongewijzigde code
Het jobs/covid_trends_job_raw.py
bestand is een niet-gemodulariseerde versie van de codelogica. U kunt dit bestand zelf uitvoeren.
Modulaire code
Het jobs/covid_trends_job.py
bestand is een modulaire versie van de codelogica. Dit bestand is afhankelijk van de gedeelde code in het covid_analysis/transforms.py
bestand. Het covid_analysis/__init__.py
bestand behandelt de covide_analysis
map als een pakket met pakketten.
Testen
Unittests
Het tests/testdata.csv
bestand bevat een klein deel van de gegevens in het covid-hospitalizations.csv
bestand voor testdoeleinden. Het tests/transforms_test.py
bestand bevat de eenheidstests voor het covid_analysis/transforms.py
bestand.
Eenheidstestloper
Het pytest.ini
bestand bevat configuratieopties voor het uitvoeren van tests met pytest. Zie pytest.ini en configuratieopties in de pytest
documentatie.
Het .coveragerc
bestand bevat configuratieopties voor python-codedekkingsmetingen met coverage.py. Zie Configuratiereferentie in de coverage.py
documentatie.
Het requirements.txt
bestand, een subset van het unit-requirements.txt
bestand dat u eerder hebt pip
uitgevoerd, bevat een lijst met pakketten waarvan de eenheidstests ook afhankelijk zijn.
Verpakking
Het setup.py
bestand bevat opdrachten die moeten worden uitgevoerd op de console (consolescripts), zoals de opdracht, voor het pip
verpakken van Python-projecten met setuptools. Zie Toegangspunten in de setuptools
documentatie.
Andere bestanden
Er zijn andere bestanden in dit codevoorbeeld die nog niet eerder zijn beschreven:
- De
.github/workflows
map bevat drie bestanden,databricks_pull_request_tests.yml
,onpush.yml
enonrelease.yaml
, die de GitHub Actions vertegenwoordigen, die verderop in de sectie GitHub Actions worden behandeld. - Het
.gitignore
bestand bevat een lijst met lokale mappen en bestanden die door Git worden genegeerd voor uw opslagplaats.
Het codevoorbeeld uitvoeren
U kunt azure Databricks op uw lokale computer gebruiken dbx
om het codevoorbeeld op aanvraag uit te voeren in uw externe werkruimte, zoals beschreven in de volgende subsectie. U kunt Ook GitHub Actions gebruiken om gitHub het codevoorbeeld uit te voeren telkens wanneer u codewijzigingen naar uw GitHub-opslagplaats pusht.
Uitvoeren met dbx
Installeer de inhoud van de
covid_analysis
map als een pakket in de ontwikkelmodus van Pythonsetuptools
door de volgende opdracht uit te voeren vanuit de hoofdmap van uwdbx
project (bijvoorbeeld deide-demo/ide-best-practices
map). Zorg ervoor dat u de punt (.
) aan het einde van deze opdracht opneemt:pip install -e .
Met deze opdracht maakt u een
covid_analysis.egg-info
map, die informatie bevat over de gecompileerde versie van decovid_analysis/__init__.py
encovid_analysis/transforms.py
bestanden.Voer de tests uit door de volgende opdracht uit te voeren:
pytest tests/
De resultaten van de tests worden weergegeven in de terminal. Alle vier de tests moeten worden weergegeven als geslaagd.
U kunt eventueel metrische gegevens voor de testdekking voor uw tests ophalen door de volgende opdracht uit te voeren:
coverage run -m pytest tests/
Notitie
Als een bericht wordt weergegeven dat
coverage
niet kan worden gevonden, voert u het uitpip install coverage
en probeert u het opnieuw.Voer de volgende opdracht uit om testdekkingsresultaten weer te geven:
coverage report -m
Als alle vier de tests zijn geslaagd, verzendt u de inhoud van het
dbx
project naar uw Azure Databricks-werkruimte door de volgende opdracht uit te voeren:dbx deploy --environment=default
Informatie over het project en de uitvoeringen worden verzonden naar de locatie die is opgegeven in het
workspace_directory
object in het.dbx/project.json
bestand.De inhoud van het project wordt verzonden naar de locatie die is opgegeven in het
artifact_location
object in het.dbx/project.json
bestand.Voer de preproductieversie van de code in uw werkruimte uit door de volgende opdracht uit te voeren:
dbx launch covid_analysis_etl_integ
Er wordt een koppeling naar de resultaten van de uitvoering weergegeven in de terminal. Het ziet er ongeveer als volgt uit:
https://<your-workspace-instance-id>/?o=1234567890123456#job/123456789012345/run/12345
Volg deze koppeling in uw webbrowser om de resultaten van de uitvoering in uw werkruimte te bekijken.
Voer de productieversie van de code in uw werkruimte uit door de volgende opdracht uit te voeren:
dbx launch covid_analysis_etl_prod
Er wordt een koppeling naar de resultaten van de uitvoering weergegeven in de terminal. Het ziet er ongeveer als volgt uit:
https://<your-workspace-instance-id>/?o=1234567890123456#job/123456789012345/run/23456
Volg deze koppeling in uw webbrowser om de resultaten van de uitvoering in uw werkruimte te bekijken.
Uitvoeren met GitHub Actions
Ga als volgt te werk in de map onpush.yml
onrelease.yml
van .github/workflows
het project en de GitHub Actions-bestanden:
- Bij elke push naar een tag die begint,
v
wordt gebruiktdbx
om decovid_analysis_etl_prod
taak te implementeren. - Bij elke push die niet aan een tag begint die begint met
v
:- Wordt gebruikt
pytest
om de eenheidstests uit te voeren. - Hiermee
dbx
implementeert u het bestand dat in decovid_analysis_etl_integ
taak is opgegeven in de externe werkruimte. - Wordt gebruikt
dbx
om het al geïmplementeerde bestand te starten dat is opgegeven in decovid_analysis_etl_integ
taak in de externe werkruimte, waarbij deze uitvoering wordt getraceerd totdat het is voltooid.
- Wordt gebruikt
Notitie
Er is een extra GitHub Actions-bestand beschikbaar databricks_pull_request_tests.yml
dat u als sjabloon kunt gebruiken om mee te experimenteren, zonder dat dit van invloed is op de onpush.yml
en onrelease.yml
GitHub Actions-bestanden. U kunt dit codevoorbeeld uitvoeren zonder het databricks_pull_request_tests.yml
GitHub Actions-bestand. Het gebruik ervan wordt niet behandeld in dit artikel.
In de volgende subsecties wordt beschreven hoe u de onpush.yml
bestanden en GitHub Actions instelt en onrelease.yml
uitvoert.
Instellen voor het gebruik van GitHub Actions
Stel uw Azure Databricks-werkruimte in door de instructies in service-principals voor CI/CD te volgen. Dit omvat de volgende acties:
- Een service-principal maken.
- Maak een Microsoft Entra ID-token voor de service-principal.
Databricks raadt u aan om een Microsoft Entra ID-token voor een service-principal te gebruiken in plaats van het persoonlijke toegangstoken van Databricks voor uw werkruimtegebruiker, zodat GitHub kan worden geverifieerd met uw Azure Databricks-werkruimte.
Nadat u de service-principal en het bijbehorende Microsoft Entra ID-token hebt gemaakt, stopt u en noteert u de waarde van het Microsoft Entra ID-token, die u in de volgende sectie gaat gebruiken.
GitHub Actions uitvoeren
Stap 1: Uw gekloonde opslagplaats publiceren
- Klik in Visual Studio Code in de zijbalk op het GitHub-pictogram . Als het pictogram niet zichtbaar is, schakelt u eerst de extensie Pull-aanvragen en problemen van GitHub in via de weergave Extensies (Extensies weergeven>).
- Als de knop Aanmelden zichtbaar is, klikt u erop en volgt u de instructies op het scherm om u aan te melden bij uw GitHub-account.
- Klik op de menubalk op Opdrachtpalet weergeven>, typ
Publish to GitHub
en klik vervolgens op Publiceren naar GitHub. - Selecteer een optie om uw gekloonde opslagplaats naar uw GitHub-account te publiceren.
Stap 2: Versleutelde geheimen toevoegen aan uw opslagplaats
Volg op de GitHub-website voor uw gepubliceerde opslagplaats de instructies in Versleutelde geheimen maken voor een opslagplaats voor de volgende versleutelde geheimen:
- Maak een versleuteld geheim met de naam
DATABRICKS_HOST
, stel deze in op de waarde van uw URL per werkruimte, bijvoorbeeldhttps://adb-1234567890123456.7.azuredatabricks.net
. - Maak een versleuteld geheim met de naam
DATABRICKS_TOKEN
, stel deze in op de waarde van het Microsoft Entra ID-token voor de service-principal.
Stap 3: Een vertakking maken en publiceren naar uw opslagplaats
- Klik in Visual Studio Code in de weergave Broncodebeheer (Broncodebeheer weergeven>) op het pictogram ... (Weergaven en meer acties).
- Klik op Branch Create Branch > Van.
- Voer bijvoorbeeld
my-branch
een naam in voor de vertakking. - Selecteer de vertakking waaruit u de vertakking wilt maken, bijvoorbeeld main.
- Breng een kleine wijziging aan in een van de bestanden in uw lokale opslagplaats en sla het bestand vervolgens op. Breng bijvoorbeeld een kleine wijziging aan in een code-opmerking in het
tests/transforms_test.py
bestand. - Klik in de weergave Broncodebeheer nogmaals op het pictogram ... (Weergaven en meer acties).
- Klik op Wijzigingen > fase alle wijzigingen.
- Klik nogmaals op het pictogram ... (Weergaven en meer acties).
- Klik op Doorvoer > doorvoer gefaseerd.
- Voer een bericht in voor de doorvoering.
- Klik nogmaals op het pictogram ... (Weergaven en meer acties).
- Klik op Branch Publish Branch>.
Stap 4: Een pull-aanvraag maken en samenvoegen
- Ga naar de GitHub-website voor uw gepubliceerde opslagplaats.
https://github/<your-GitHub-username>/ide-best-practices
- Klik op het tabblad Pull-aanvragen , naast mijn vertakking, op Vergelijken en pull-aanvraag.
- Klik op Create pull-request (Pull-aanvraag maken).
- Wacht op de pagina met pull-aanvragen totdat het pictogram naast CI pipleline/ci-pipeline (push) wordt weergegeven om een groen vinkje weer te geven. (Het kan enkele ogenblikken duren voordat het pictogram wordt weergegeven.) Als er een rode X is in plaats van een groen vinkje, klikt u op Details om erachter te komen waarom. Als het pictogram of de details niet meer worden weergegeven, klikt u op Alle controles weergeven.
- Als het groene vinkje wordt weergegeven, voegt u de pull-aanvraag samen in de
main
vertakking door op Pull-aanvraag samenvoegen te klikken.