-
1. Kom igång
- 1.1 Om versionshantering
- 1.2 En kort historik om Git
- 1.3 Vad är Git?
- 1.4 Kommandoraden
- 1.5 Installera Git
- 1.6 Första gången med Git
- 1.7 Få hjälp
- 1.8 Sammanfattning
-
2. Grunderna i Git
- 2.1 Att få tag i ett Git‑kodförråd
- 2.2 Spara ändringar i kodförrådet
- 2.3 Visa incheckningshistoriken
- 2.4 Ångra saker
- 2.5 Arbeta med fjärrkodförråd
- 2.6 Att tagga
- 2.7 Git-alias
- 2.8 Sammanfattning
-
3. Git-grenar
- 3.1 Grenar i korthet
- 3.2 Grundläggande gren- och sammanfogningsarbete
- 3.3 Grenhantering
- 3.4 Arbetsflöden med grenar
- 3.5 Fjärrgrenar
- 3.6 Ombasering
- 3.7 Sammanfattning
-
4. Git på servern
- 4.1 Protokollen
- 4.2 Konfigurera Git på en server
- 4.3 Generera din publika SSH-nyckel
- 4.4 Konfigurera servern
- 4.5 Git-demon
- 4.6 Smart HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Tredjepartsalternativ
- 4.10 Sammanfattning
-
5. Distribuerat Git
-
6. GitHub
-
7. Git-verktyg
- 7.1 Revisionsurval
- 7.2 Interaktiv köläggning
- 7.3 Lägga undan och städa
- 7.4 Signera ditt arbete
- 7.5 Sökning
- 7.6 Skriva om historik
- 7.7 Nollställning förklarad
- 7.8 Avancerad sammanslagning
- 7.9 Rerere
- 7.10 Felsöka med Git
- 7.11 Undermoduler
- 7.12 Bunta
- 7.13 Ersätt
- 7.14 Lagring av inloggningsuppgifter
- 7.15 Sammanfattning
-
8. Anpassa Git
- 8.1 Git‑konfiguration
- 8.2 Git‑attribut
- 8.3 Git‑krokar
- 8.4 Ett exempel på Git‑upprätthållen policy
- 8.5 Sammanfattning
-
9. Git och andra system
- 9.1 Git som klient
- 9.2 Migrera till Git
- 9.3 Sammanfattning
-
10. Git bakom kulisserna
- 10.1 Lågnivådel och användardel
- 10.2 Git-objekt
- 10.3 Git-referenser
- 10.4 Packfiler
- 10.5 Refspecen
- 10.6 Överföringsprotokoll
- 10.7 Underhåll och dataåterställning
- 10.8 Miljövariabler
- 10.9 Sammanfattning
-
A1. Bilaga A: Git i andra miljöer
- A1.1 Grafiska gränssnitt
- A1.2 Git i Visual Studio
- A1.3 Git i Visual Studio Code
- A1.4 Git i IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine
- A1.5 Git i Sublime Text
- A1.6 Git i Bash
- A1.7 Git i Zsh
- A1.8 Git i PowerShell
- A1.9 Sammanfattning
-
A2. Bilaga B: Bädda in Git i dina applikationer
- A2.1 Git på kommandoraden
- A2.2 Libgit2
- A2.3 JGit
- A2.4 go-git
- A2.5 Dulwich
-
A3. Bilaga C: Git-kommandon
- A3.1 Uppstart och konfiguration
- A3.2 Skaffa och skapa projekt
- A3.3 Grundläggande ögonblicksbilder
- A3.4 Grening och sammanslagning
- A3.5 Dela och uppdatera projekt
- A3.6 Inspektion och jämförelse
- A3.7 Felsökning
- A3.8 Patchning
- A3.9 E‑post
- A3.10 Externa system
- A3.11 Administration
- A3.12 Lågnivåkommandon
A3.2 Bilaga C: Git-kommandon - Skaffa och skapa projekt
Skaffa och skapa projekt
Det finns två sätt att skaffa ett Git‑kodförråd på. Det ena är att kopiera det från ett befintligt kodförråd på nätverket eller någon annanstans, och det andra är att skapa ett nytt i en befintlig katalog.
git init
För att ta en katalog och göra den till ett nytt Git‑kodförråd så att du kan börja versionshantera den kan du helt enkelt köra git init.
Vi introducerar detta först i Att få tag i ett Git‑kodförråd, där vi visar hur man skapar ett helt nytt kodförråd att börja arbeta i.
Vi nämner kort hur du kan ändra standardgrennamnet från “master” i Fjärrgrenar.
Vi använder kommandot för att skapa ett tomt bart kodförråd för en server i Lägg det bara kodförrådet på en server.
Slutligen går vi igenom några detaljer om vad det faktiskt gör bakom kulisserna i Lågnivådel och användardel.
git clone
Kommandot git clone är i praktiken ett omslag kring flera andra kommandon.
Det skapar en ny katalog, går in i den och kör git init för att göra den till ett tomt Git‑kodförråd, lägger till ett fjärrkodförråd (git remote add) med den URL du skickar in (som standard kallad origin), kör git fetch från fjärrkodförrådet och växlar sedan in den senaste incheckningen i din arbetskatalog med git checkout.
Kommandot git clone används på dussintals ställen i boken, men vi listar bara några intressanta ställen.
Det introduceras och förklaras i Klona ett befintligt kodförråd, där vi går igenom några exempel.
I Konfigurera Git på en server tittar vi på att använda alternativet --bare för att skapa en kopia av ett Git‑kodförråd utan arbetskatalog.
I Bunta använder vi det för att packa upp en Git‑bunt.
Slutligen lär vi oss flaggan --recurse-submodules i Klona ett projekt med undermoduler för att göra kloning av ett kodförråd med submoduler lite enklare.
Även om det används på många andra ställen i boken så är de här de som är något mer unika, eller där de används på ett lite annorlunda sätt.