You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/nl/1-getting-started-lessons/2-github-basics/README.md

18 KiB

Introductie tot GitHub

Deze les behandelt de basisprincipes van GitHub, een platform om je code te hosten en wijzigingen te beheren.

Intro tot GitHub

Sketchnote door Tomomi Imura

Quiz voorafgaand aan de les

Quiz voorafgaand aan de les

Introductie

In deze les behandelen we:

  • het bijhouden van het werk dat je op je computer doet
  • samenwerken aan projecten met anderen
  • hoe je kunt bijdragen aan open source software

Vereisten

Voordat je begint, moet je controleren of Git is geïnstalleerd. Typ in de terminal:
git --version

Als Git niet is geïnstalleerd, download Git. Stel vervolgens je lokale Git-profiel in via de terminal:

  • git config --global user.name "jouw-naam"
  • git config --global user.email "jouw-email"

Om te controleren of Git al is geconfigureerd, kun je typen: git config --list

Je hebt ook een GitHub-account nodig, een code-editor (zoals Visual Studio Code), en je moet je terminal (of: opdrachtprompt) openen.

Ga naar github.com en maak een account aan als je dat nog niet hebt, of log in en vul je profiel in.

GitHub is niet de enige code-repository ter wereld; er zijn andere, maar GitHub is de bekendste.

Voorbereiding

Je hebt zowel een map met een codeproject op je lokale computer (laptop of pc) nodig, als een openbare repository op GitHub, die als voorbeeld zal dienen voor hoe je kunt bijdragen aan de projecten van anderen.


Codebeheer

Stel dat je lokaal een map hebt met een codeproject en je wilt je voortgang gaan bijhouden met behulp van Git - het versiebeheersysteem. Sommige mensen vergelijken het gebruik van Git met het schrijven van een liefdesbrief aan je toekomstige zelf. Door je commit-berichten later terug te lezen, kun je je herinneren waarom je een bepaalde beslissing hebt genomen, of een wijziging "terugdraaien" - mits je goede "commit-berichten" schrijft.

Taak: Maak een repository en commit code

Bekijk de video

Git- en GitHub-basisprincipes video

  1. Maak een repository op GitHub. Op GitHub.com, in het tabblad repositories, of via de navigatiebalk rechtsboven, vind je de knop new repo.

    1. Geef je repository (map) een naam.
    2. Selecteer create repository.
  2. Navigeer naar je werkmap. In je terminal, ga naar de map (ook wel directory genoemd) die je wilt gaan bijhouden. Typ:

    cd [name of your folder]
    
  3. Initialiseer een Git-repository. Typ in je project:

    git init
    
  4. Controleer de status. Om de status van je repository te controleren, typ:

    git status
    

    De uitvoer kan er ongeveer zo uitzien:

    Changes not staged for commit:
    (use "git add <file>..." to update what will be committed)
    (use "git checkout -- <file>..." to discard changes in working directory)
    
         modified:   file.txt
         modified:   file2.txt
    

    Meestal vertelt een git status-commando je dingen zoals welke bestanden klaar zijn om opgeslagen te worden in de repository of welke bestanden wijzigingen bevatten die je mogelijk wilt vastleggen.

  5. Voeg alle bestanden toe voor tracking
    Dit wordt ook wel het "stagen" van bestanden genoemd, of het toevoegen van bestanden aan de staging area.

    git add .
    

    Het argument git add plus . geeft aan dat al je bestanden en wijzigingen worden gevolgd.

  6. Voeg geselecteerde bestanden toe voor tracking

    git add [file or folder name]
    

    Dit helpt ons om alleen geselecteerde bestanden toe te voegen aan de staging area wanneer we niet alle bestanden in één keer willen committen.

  7. Haal bestanden uit de staging area

    git reset
    

    Dit commando helpt ons om alle bestanden in één keer uit de staging area te halen.

  8. Haal een specifiek bestand uit de staging area

    git reset [file or folder name]
    

    Dit commando helpt ons om slechts één specifiek bestand uit de staging area te halen dat we niet willen opnemen in de volgende commit.

  9. Leg je werk vast. Op dit punt heb je de bestanden toegevoegd aan een zogenaamde staging area. Dit is een plek waar Git je bestanden bijhoudt. Om de wijziging permanent te maken, moet je de bestanden committen. Dit doe je door een commit te maken met het git commit-commando. Een commit vertegenwoordigt een opslagpunt in de geschiedenis van je repository. Typ het volgende om een commit te maken:

    git commit -m "first commit"
    

    Dit commit al je bestanden met het bericht "first commit". Voor toekomstige commit-berichten wil je een meer beschrijvende omschrijving geven om aan te geven wat voor soort wijziging je hebt aangebracht.

  10. Verbind je lokale Git-repository met GitHub. Een Git-repository is handig op je computer, maar op een gegeven moment wil je een back-up van je bestanden ergens anders hebben en ook andere mensen uitnodigen om met je samen te werken aan je repository. Een geweldige plek om dit te doen is GitHub. We hebben al een repository op GitHub gemaakt, dus het enige wat we nog moeten doen is onze lokale Git-repository verbinden met GitHub. Het commando git remote add doet precies dat. Typ het volgende commando:

    Let op, voordat je het commando typt, ga naar de pagina van je GitHub-repository om de repository-URL te vinden. Je gebruikt deze in het onderstaande commando. Vervang https://github.com/username/repository_name.git door je GitHub-URL.

    git remote add origin https://github.com/username/repository_name.git
    

    Dit creëert een remote, of verbinding, genaamd "origin" die verwijst naar de GitHub-repository die je eerder hebt gemaakt.

  11. Stuur lokale bestanden naar GitHub. Tot nu toe heb je een verbinding gemaakt tussen de lokale repository en de GitHub-repository. Laten we deze bestanden naar GitHub sturen met het volgende commando git push, zoals hieronder:

    Let op, je branchnaam kan standaard anders zijn dan main.

    git push -u origin main
    

    Dit stuurt je commits in je "main"-branch naar GitHub.

  12. Meer wijzigingen toevoegen. Als je verder wilt gaan met het aanbrengen van wijzigingen en deze naar GitHub wilt pushen, hoef je alleen de volgende drie commando's te gebruiken:

    git add .
    git commit -m "type your commit message here"
    git push
    

    Tip: Je wilt misschien ook een .gitignore-bestand gebruiken om te voorkomen dat bestanden die je niet wilt volgen, op GitHub verschijnen - zoals dat notitiebestand dat je in dezelfde map opslaat, maar geen plaats heeft in een openbare repository. Je kunt sjablonen voor .gitignore-bestanden vinden op .gitignore templates.

Commit-berichten

Een geweldig Git-commit-onderwerp voltooit de volgende zin:
Als dit wordt toegepast, zal deze commit .

Voor het onderwerp gebruik je de gebiedende wijs in de tegenwoordige tijd: "verander" in plaats van "veranderd" of "verandert".
Net als in het onderwerp, gebruik je in de optionele toelichting ook de gebiedende wijs in de tegenwoordige tijd. De toelichting moet de motivatie voor de wijziging bevatten en dit contrasteren met het vorige gedrag. Je legt de waarom uit, niet de hoe.

Neem een paar minuten de tijd om rond te kijken op GitHub. Kun je een echt geweldig commit-bericht vinden? Kun je een heel minimaal bericht vinden? Welke informatie denk je dat het belangrijkst en nuttigst is om over te brengen in een commit-bericht?

Taak: Samenwerken

De belangrijkste reden om dingen op GitHub te zetten, was om het mogelijk te maken samen te werken met andere ontwikkelaars.

Samenwerken aan projecten met anderen

Bekijk de video

Git- en GitHub-basisprincipes video

In je repository, navigeer naar Insights > Community om te zien hoe jouw project zich verhoudt tot de aanbevolen community-standaarden.

Hier zijn enkele dingen die je GitHub-repository kunnen verbeteren:

  • Beschrijving. Heb je een beschrijving toegevoegd voor je project?
  • README. Heb je een README toegevoegd? GitHub biedt richtlijnen voor het schrijven van een README.
  • Bijdragegids. Heeft je project bijdragegidsen?
  • Gedragscode. Een gedragscode.
  • Licentie. Misschien wel het belangrijkst, een licentie.

Al deze middelen zullen het onboarden van nieuwe teamleden ten goede komen. Dit zijn doorgaans de dingen waar nieuwe bijdragers naar kijken voordat ze zelfs maar naar je code kijken, om te bepalen of jouw project de juiste plek is om hun tijd aan te besteden.

README-bestanden, hoewel ze tijd kosten om voor te bereiden, worden vaak verwaarloosd door drukke maintainers. Kun je een voorbeeld vinden van een bijzonder beschrijvende README? Opmerking: er zijn enkele tools om goede READMEs te maken die je misschien wilt proberen.

Taak: Code samenvoegen

Bijdragedocumenten helpen mensen bijdragen aan het project. Ze leggen uit wat voor soort bijdragen je zoekt en hoe het proces werkt. Bijdragers moeten een reeks stappen doorlopen om te kunnen bijdragen aan jouw repository op GitHub:

  1. Fork je repository. Je wilt waarschijnlijk dat mensen je project forken. Forken betekent dat ze een kopie van jouw repository maken op hun GitHub-profiel.
  2. Klonen. Vanaf daar klonen ze het project naar hun lokale computer.
  3. Maak een branch. Je wilt dat ze een branch maken voor hun werk.
  4. Focus hun wijziging op één gebied. Vraag bijdragers om hun bijdragen op één ding tegelijk te concentreren - zo is de kans groter dat je hun werk kunt mergen. Stel je voor dat ze een bugfix schrijven, een nieuwe functie toevoegen en verschillende tests bijwerken - wat als je slechts 2 van de 3, of 1 van de 3 wijzigingen wilt of kunt implementeren?

Stel je een situatie voor waarin branches bijzonder belangrijk zijn voor het schrijven en leveren van goede code. Aan welke gebruiksscenario's kun je denken?

Opmerking: wees de verandering die je in de wereld wilt zien, en maak ook branches voor je eigen werk. Alle commits die je maakt, worden gemaakt op de branch waar je momenteel op "uitgecheckt" bent. Gebruik git status om te zien op welke branch dat is.

Laten we een workflow voor bijdragers doorlopen. Stel dat de bijdrager de repository al heeft geforkt en gekloned, zodat ze een Git-repository hebben die klaar is om aan te werken op hun lokale computer:

  1. Maak een branch. Gebruik het commando git branch om een branch te maken die de wijzigingen bevat die ze willen bijdragen:

    git branch [branch-name]
    
  2. Schakel over naar de werkbranch. Schakel over naar de opgegeven branch en werk de werkdirectory bij met git switch:

    git switch [branch-name]
    
  3. Doe je werk. Op dit punt wil je je wijzigingen toevoegen. Vergeet niet om Git hierover te informeren met de volgende commando's:

    git add .
    git commit -m "my changes"
    

    Zorg ervoor dat je je commit een goede naam geeft, zowel voor jezelf als voor de maintainer van de repository waaraan je helpt.

  4. Combineer je werk met de main-branch. Op een gegeven moment ben je klaar met werken en wil je je werk combineren met dat van de main-branch. De main-branch kan ondertussen zijn gewijzigd, dus zorg ervoor dat je deze eerst bijwerkt naar de nieuwste versie met de volgende commando's:

    git switch main
    git pull
    

    Op dit punt wil je ervoor zorgen dat eventuele conflicten, situaties waarin Git de wijzigingen niet gemakkelijk kan combineren, plaatsvinden in jouw werkbranch. Voer daarom de volgende commando's uit:

    git switch [branch_name]
    git merge main
    

    Dit brengt alle wijzigingen van main naar jouw branch en hopelijk kun je gewoon doorgaan. Zo niet, dan zal VS Code je vertellen waar Git in de war is en pas je de betreffende bestanden aan om aan te geven welke inhoud het meest accuraat is.

  5. Stuur je werk naar GitHub. Je werk naar GitHub sturen betekent twee dingen: je branch pushen naar je repository en vervolgens een PR (Pull Request) openen.

    git push --set-upstream origin [branch-name]
    

    Het bovenstaande commando maakt de branch aan op je geforkte repository.

  6. Open een PR. Vervolgens wil je een PR openen. Dit doe je door naar de geforkte repository op GitHub te navigeren. Je ziet een indicatie op GitHub waar wordt gevraagd of je een nieuwe PR wilt maken. Klik daarop en je wordt naar een interface geleid waar je de commit-berichttitel kunt wijzigen en een meer geschikte beschrijving kunt geven. Nu ziet de maintainer van de repository die je hebt geforkt deze PR en met een beetje geluk waarderen ze het en mergen ze je PR. Je bent nu een bijdrager, hoera :)

  7. Ruim op. Het wordt als goede gewoonte beschouwd om op te ruimen nadat je succesvol een PR hebt gemerged. Je wilt zowel je lokale branch als de branch die je naar GitHub hebt gepusht opruimen. Verwijder deze eerst lokaal met het volgende commando:

    git branch -d [branch-name]
    

    Zorg ervoor dat je naar de GitHub-pagina van de geforkte repository gaat en de remote branch verwijdert die je zojuist hebt gepusht. Pull request lijkt misschien een rare term, omdat je eigenlijk je wijzigingen naar het project wilt pushen. Maar de maintainer (projecteigenaar) of het kernteam moet je wijzigingen beoordelen voordat ze worden samengevoegd met de "main" branch van het project. Je vraagt dus eigenlijk om een besluit van een maintainer over je wijziging.

Een pull request is de plek waar je de verschillen die op een branch zijn geïntroduceerd kunt vergelijken en bespreken, met reviews, opmerkingen, geïntegreerde tests en meer. Een goede pull request volgt ongeveer dezelfde regels als een commitbericht. Je kunt een verwijzing toevoegen naar een issue in de issue tracker, bijvoorbeeld wanneer je werk een issue oplost. Dit doe je door een # te gebruiken, gevolgd door het nummer van je issue. Bijvoorbeeld #97.

🤞Duimen dat alle controles slagen en de projecteigenaar(s) je wijzigingen samenvoegen met het project🤞

Werk je huidige lokale werkbranch bij met alle nieuwe commits van de bijbehorende remote branch op GitHub:

git pull

Hoe bijdragen aan open source

Laten we eerst een repository (of repo) op GitHub vinden die je interesse heeft en waaraan je een wijziging wilt bijdragen. Je wilt de inhoud ervan naar je computer kopiëren.

Een goede manier om 'beginner-vriendelijke' repos te vinden is door te zoeken op de tag 'good-first-issue'.

Een repo lokaal kopiëren

Er zijn verschillende manieren om code te kopiëren. Een manier is om de inhoud van de repository te "clonen" met behulp van HTTPS, SSH of de GitHub CLI (Command Line Interface).

Open je terminal en clone de repository als volgt: git clone https://github.com/ProjectURL

Om aan het project te werken, ga je naar de juiste map: cd ProjectURL

Je kunt het hele project ook openen met Codespaces, de ingebouwde code-editor / cloudontwikkelomgeving van GitHub, of met GitHub Desktop.

Ten slotte kun je de code downloaden in een gezipte map.

Een paar andere interessante dingen over GitHub

Je kunt elke openbare repository op GitHub ster geven, volgen en/of "forken". Je vindt je gestar-de repositories in het menu rechtsboven. Het is als bladwijzers maken, maar dan voor code.

Projecten hebben een issue tracker, meestal op GitHub in het tabblad "Issues", tenzij anders aangegeven, waar mensen problemen met betrekking tot het project bespreken. En in het tabblad Pull Requests bespreken en beoordelen mensen wijzigingen die in behandeling zijn.

Projecten kunnen ook discussies hebben in forums, mailinglijsten of chatkanalen zoals Slack, Discord of IRC.

Kijk eens rond in je nieuwe GitHub-repo en probeer een paar dingen, zoals instellingen bewerken, informatie toevoegen aan je repo en een project maken (zoals een Kanban-bord). Er is veel te ontdekken!


🚀 Uitdaging

Werk samen met een vriend aan elkaars code. Maak samen een project, fork code, maak branches en voeg wijzigingen samen.

Quiz na de les

Quiz na de les

Herhaling & Zelfstudie

Lees meer over bijdragen aan open source software.

Git cheatsheet.

Oefen, oefen, oefen. GitHub biedt geweldige leerpaden aan via skills.github.com:

Je vindt er ook meer gevorderde cursussen.

Opdracht

Voltooi de cursus Eerste week op GitHub


Disclaimer:
Dit document is vertaald met behulp van de AI-vertalingsservice Co-op Translator. Hoewel we streven naar nauwkeurigheid, dient u zich ervan bewust te zijn dat geautomatiseerde vertalingen fouten of onnauwkeurigheden kunnen bevatten. Het originele document in de oorspronkelijke taal moet worden beschouwd als de gezaghebbende bron. Voor kritieke informatie wordt professionele menselijke vertaling aanbevolen. Wij zijn niet aansprakelijk voor misverstanden of verkeerde interpretaties die voortvloeien uit het gebruik van deze vertaling.