-
1. Aan de slag
- 1.1 Over versiebeheer
- 1.2 Een kort historisch overzicht van Git
- 1.3 Wat is Git?
- 1.4 De commando-regel
- 1.5 Git installeren
- 1.6 Git klaarmaken voor eerste gebruik
- 1.7 Hulp krijgen
- 1.8 Samenvatting
-
2. Git Basics
-
3. Branchen in Git
- 3.1 Branches in vogelvlucht
- 3.2 Eenvoudig branchen en mergen
- 3.3 Branch-beheer
- 3.4 Branch workflows
- 3.5 Branches op afstand (Remote branches)
- 3.6 Rebasen
- 3.7 Samenvatting
-
4. Git op de server
- 4.1 De protocollen
- 4.2 Git op een server krijgen
- 4.3 Je publieke SSH sleutel genereren
- 4.4 De server opzetten
- 4.5 Git Daemon
- 4.6 Slimme HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Hosting oplossingen van derden
- 4.10 Samenvatting
-
5. Gedistribueerd Git
-
6. GitHub
-
7. Git Tools
- 7.1 Revisie Selectie
- 7.2 Interactief stagen
- 7.3 Stashen en opschonen
- 7.4 Je werk tekenen
- 7.5 Zoeken
- 7.6 Geschiedenis herschrijven
- 7.7 Reset ontrafeld
- 7.8 Mergen voor gevorderden
- 7.9 Rerere
- 7.10 Debuggen met Git
- 7.11 Submodules
- 7.12 Bundelen
- 7.13 Vervangen
- 7.14 Het opslaan van inloggegevens
- 7.15 Samenvatting
-
8. Git aanpassen
- 8.1 Git configuratie
- 8.2 Git attributen
- 8.3 Git Hooks
- 8.4 Een voorbeeld van Git-afgedwongen beleid
- 8.5 Samenvatting
-
9. Git en andere systemen
- 9.1 Git als een client
- 9.2 Migreren naar Git
- 9.3 Samenvatting
-
10. Git Binnenwerk
- 10.1 Binnenwerk en koetswerk (plumbing and porcelain)
- 10.2 Git objecten
- 10.3 Git Referenties
- 10.4 Packfiles
- 10.5 De Refspec
- 10.6 Uitwisseling protocollen
- 10.7 Onderhoud en gegevensherstel
- 10.8 Omgevingsvariabelen
- 10.9 Samenvatting
-
A1. Bijlage A: Git in andere omgevingen
- A1.1 Grafische interfaces
- A1.2 Git in Visual Studio
- A1.3 Git in Visual Studio Code
- A1.4 Git in Eclipse
- A1.5 Git in Sublime Text
- A1.6 Git in Bash
- A1.7 Git in Zsh
- A1.8 Git in PowerShell
- A1.9 Samenvatting
-
A2. Bijlage B: Git in je applicaties inbouwen
- A2.1 Commando-regel Git
- A2.2 Libgit2
- A2.3 JGit
- A2.4 go-git
- A2.5 Dulwich
-
A3. Bijlage C: Git Commando’s
- A3.1 Setup en configuratie
- A3.2 Projecten ophalen en maken
- A3.3 Basic Snapshotten
- A3.4 Branchen en mergen
- A3.5 Projecten delen en bijwerken
- A3.6 Inspectie en vergelijking
- A3.7 Debuggen
- A3.8 Patchen
- A3.9 Email
- A3.10 Externe systemen
- A3.11 Beheer
- A3.12 Binnenwerk commando’s (plumbing commando’s)
A3.2 Bijlage C: Git Commando’s - Projecten ophalen en maken
Projecten ophalen en maken
Er zijn twee manieren om een Git repository op te halen. Een manier is om het te kopiëren van een bestaande repository op het netwerk of ergens anders en de andere is om een nieuwe te maken in een bestaande directory.
git init
Om een directory in een nieuwe Git repository te veranderen zodat je kunt beginnen met versiebeheer, kan je simpelweg git init
aanroepen.
We hebben dit voor het eerst behandeld in Een Git repository verkrijgen, waar we laten zien hoe een gloednieuwe repository gemaakt wordt om in te werken.
We hebben kort besproken hoe je de standaard branch van “master” kunt wijzigen in Branches op afstand (Remote branches).
We gebruiken dit commando om een lege bare repository te maken voor een server in De kale repository op een server zetten.
Tot slot, behandelen we een aantal details over wat er achter de schermen gebeurt in Binnenwerk en koetswerk (plumbing and porcelain).
git clone
Het git clone
commando is eigenlijk een soort wrapper om een aantal andere commando’s.
Het maakt een nieuwe directory, gaat daarin en roept git init
aan om het een lege Git repository te maken, voegt een remote toe (git remote add
) naar de URL die je het door hebt gegeven (standaard origin
genaamd), roept een git fetch
aan van die remote repository en checkt daarna de laatste commit uit naar je werk directory met git checkout
.
Het git clone
commando wordt in tientallen plaatsen in het boek gebruikt, maar we zullen een paar interessante plaatsen opnoemen.
Het wordt kort geïntroduceerd en uitgelegd in Een bestaande repository klonen, waar we een aantal voorbeelden behandelen.
In Git op een server krijgen bekijken we het gebruik van de --bare
optie om een kopie van een Git repository te maken zonder een werk directory.
In Bundelen gebruiken we het om een gebundelde Git repository te ontbundelen.
Tenslotte, in Een project met submodules klonen hebben we de --recurse-submodules
optie laten zien waarmee het clonen van een repository met submodules iets te vereenvoudigen.
Alhoewel het op vele andere plaatsen in dit boek wordt gebruikt, zijn dit de toepassingen die nogal uniek zijn, of waar het op manieren wordt gebruikt die een beetje afwijkend zijn.