-
1. Aan die slag
- 1.1 Oor Weergawebeheer
- 1.2 Wat is Git?
- 1.3 Die Opdragreël
- 1.4 Git Installeer
- 1.5 Git klaarmaak vir eerste gebruik
- 1.6 Hulp Verkry
- 1.7 Opsomming
-
2. Git Basics
-
3. Git Branching
-
4. Git on the Server
- 4.1 Die Protokolle (The Protocols)
- 4.2 Git op 'n Bediener kry (Getting Git on a Server)
- 4.3 Jou Publieke SSH-sleutel Genereer (Generating Your SSH Public Key)
- 4.4 Die Bediener Opstel (Setting Up the Server)
- 4.5 Git Daemon
- 4.6 Slim HTTP (Smart HTTP)
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Derdeparty-gasheuroplossings (Third-Party Hosting Solutions)
- 4.10 Summary
-
5. Distributed Git
-
6. GitHub
-
7. Git Tools
- 7.1 Hersieningseleksie (Revision Selection)
- 7.2 Interaktiewe Voorbereiding (Interactive Staging)
- 7.3 Bêre en Skoonmaak (Stashing and Cleaning)
- 7.4 Ondertekening van Jou Werk (Signing Your Work)
- 7.5 Soek (Searching)
- 7.6 Herskryf van Geskiedenis (Rewriting History)
- 7.7 Reset Ontmystifiseer (Reset Demystified)
- 7.8 Gevorderde Saamsmelting (Advanced Merging)
- 7.9 Rerere
- 7.10 Ontfouting met Git (Debugging with Git)
- 7.11 Submodules
- 7.12 Bundeling (Bundling)
- 7.13 Vervang (Replace)
- 7.14 Die Stoor van Aanmeldbewyse (Credential Storage)
- 7.15 Summary
-
8. Customizing Git
-
9. Git and Other Systems
- 9.1 Git as a Client
- 9.2 Migrating to Git
- 9.3 Summary
-
10. Git Internals
4.3 Git on the Server - Jou Publieke SSH-sleutel Genereer (Generating Your SSH Public Key)
Jou Publieke SSH-sleutel Genereer (Generating Your SSH Public Key)
Baie Git-bedieners verifieer (authenticate) met behulp van publieke SSH-sleutels (SSH public keys).
Om 'n publieke sleutel te verskaf, moet elke gebruiker in jou stelsel een genereer as hulle nie reeds een het nie.
Hierdie proses is soortgelyk oor alle bedryfstelsels (operating systems) heen.
Eerstens moet jy seker maak dat jy nie reeds 'n sleutel het nie.
By verstek (by default) word 'n gebruiker se SSH-sleutels in daardie gebruiker se ~/.ssh gids (directory) gestoor.
Jy kan maklik kyk of jy reeds 'n sleutel het deur na daardie gids te gaan en die inhoud te lys:
$ cd ~/.ssh
$ ls
authorized_keys2 id_dsa known_hosts
config id_dsa.pub
Jy is op soek na 'n paar lêers met 'n naam soos id_dsa of id_rsa en 'n bypassende lêer met 'n .pub uitbreiding (extension).
Die .pub lêer is jou publieke sleutel, en die ander lêer is die ooreenstemmende privaat sleutel (private key).
As jy nie hierdie lêers het nie (of jy het nie eens 'n .ssh gids nie), kan jy dit skep deur 'n program genaamd ssh-keygen uit te voer, wat saam met die SSH-pakket op Linux/macOS-stelsels verskaf word en saam met Git vir Windows kom:
$ ssh-keygen -o
Generating public/private rsa key pair.
Enter file in which to save the key (/home/schacon/.ssh/id_rsa):
Created directory '/home/schacon/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/schacon/.ssh/id_rsa.
Your public key has been saved in /home/schacon/.ssh/id_rsa.pub.
The key fingerprint is:
d0:82:24:8e:d7:f1:bb:9b:33:53:96:93:49:da:9b:e3 schacon@mylaptop.local
Eers bevestig dit waar jy die sleutel wil stoor (.ssh/id_rsa), en dan vra dit twee keer vir 'n wagwoordfrase (passphrase), wat jy leeg kan laat as jy nie 'n wagwoord wil intik wanneer jy die sleutel gebruik nie.
As jy egter wel 'n wagwoord gebruik, maak seker dat jy die -o opsie byvoeg; dit stoor die privaat sleutel in 'n formaat wat meer bestand is teen brute-krag wagwoordkraking (brute-force password cracking) as wat die verstekformaat is.
Jy kan ook die ssh-agent instrument gebruik om te verhoed dat jy elke keer die wagwoord moet intik.
Nou moet elke gebruiker wat dit doen hul publieke sleutel aan jou stuur, of aan wie ook al die Git-bediener administreer (met die veronderstelling dat jy 'n SSH-bedieneropstelling gebruik wat publieke sleutels vereis).
Al wat hulle hoef te doen is om die inhoud van die .pub lêer te kopieer en dit te e-pos.
Die publieke sleutels lyk min of meer so:
$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkDHrfHY17SbrmTIpNLTGK9Tjom/BWDSU
GPl+nafzlHDTYW7hdI4yZ5ew18JH4JW9jbhUFrviQzM7xlELEVf4h9lFX5QVkbPppSwg0cda3
Pbv7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8V6RjsNAQwdsdMFvSlVK/7XA
t3FaoJoAsncM1Q9x5+3V0Ww68/eIFmb1zuUFljQJKprrX88XypNDvjYNby6vw/Pb0rwert/En
mZ+AW4OZPnTPI89ZPmVMLuayrD2cE86Z/il8b+gw3r3+1nKatmIkjn2so1d01QraTlMqVSsbx
NrRFi9wrf+M7Q== schacon@mylaptop.local
Vir 'n meer in-diepte tutoriaal oor die skep van 'n SSH-sleutel op verskeie bedryfstelsels, sien die GitHub-gids oor SSH-sleutels by https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent.