-
1. Aan de slag
-
2. De basis van Git
-
3. Branchen in Git
- 3.1 Wat een branch is
- 3.2 Eenvoudig branchen en mergen
- 3.3 Branch beheer
- 3.4 Branch werkwijzen
- 3.5 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 instellen
- 4.5 Publieke toegang
- 4.6 GitWeb
- 4.7 Gitosis
- 4.8 Gitolite
- 4.9 Git daemon
- 4.10 Hosted Git
- 4.11 Samenvatting
-
5. Gedistribueerd Git
-
6. Git tools
- 6.1 Revisie selectie
- 6.2 Interactief stagen
- 6.3 Stashen
- 6.4 Geschiedenis herschrijven
- 6.5 Debuggen met Git
- 6.6 Submodules
- 6.7 Subboom mergen
- 6.8 Samenvatting
-
7. Git op maat maken
- 7.1 Git configuratie
- 7.2 Git attributen
- 7.3 Git haken
- 7.4 Een voorbeeld van Git-afgedwongen beleid
- 7.5 Samenvatting
-
8. Git en andere systemen
- 8.1 Git en Subversion
- 8.2 Naar Git migreren
- 8.3 Samenvatting
-
9. Het binnenwerk van Git
- 9.1 Sanitaire inrichtingen en porselein
- 9.2 Git objecten
- 9.3 Git referenties
- 9.4 Packfiles
- 9.5 De refspec
- 9.6 Overdracht protocollen
- 9.7 Onderhoud en het herstellen van gegevens
- 9.8 Samenvatting
1.2 Aan de slag - Een kleine geschiedenis van Git
Een kleine geschiedenis van Git
Zoals zoveel goede dingen in het leven begon Git met een beetje creatieve destructie en een hoogoplopende controverse. De Linuxkernel is een open source softwareproject met een behoorlijk groot draagvlak. In het kader van het onderhoud van de Linuxkernel (1991–2002), werden aanpassingen aan de software voornamelijk verspreid via patches en gearchiveerde bestanden. In 2002 veranderde dat want vanaf dat jaar begon het project het gesloten DVCS genaamd BitKeeper te gebruiken.
In 2005 viel de relatie tussen de gemeenschap die de Linuxkernel ontwikkelde en het commerciële bedrijf dat BitKeeper maakte uiteen. Het programma kon niet langer meer gratis worden gebruikt. Dit was de aanleiding voor de gemeenschap (en Linus Torvalds, de maker van Linux, in het bijzonder) om hun eigen gereedschap te ontwikkelen. Gebaseerd op de ervaring die opgedaan was toen ze nog BitKeeper gebruikten. Een paar van de doelen die ze hadden voor het nieuwe systeem waren als volgt:
- Snelheid
- Eenvoudig ontwerp
- Goede ondersteuning voor niet-lineaire ontwikkeling (duizenden aparte takken tegelijk)
- Volledig gedistribueerd
- In staat om efficiënt om te gaan met grote projecten als de Linuxkernel (voor wat betreft snelheid maar ook opslagruimte)
Sinds het ontstaan in 2005 is Git gegroeid tot zijn huidige vorm: het is eenvoudig te gebruiken en heeft toch die oorspronkelijke eigenschappen behouden. Het is ongelofelijk snel, enorm efficiënt met grote projecten en zijn systeem voor aparte takken (‘branches’) van niet-lineaire ontwikkeling is ongeëvenaard (zie Hoofdstuk 3).