Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.53.0 no changes
-
2.52.0
2025-11-17
- 2.48.1 → 2.51.2 no changes
-
2.48.0
2025-01-10
- 2.47.1 → 2.47.3 no changes
-
2.47.0
2024-10-06
- 2.45.1 → 2.46.4 no changes
-
2.45.0
2024-04-29
- 2.44.1 → 2.44.4 no changes
-
2.44.0
2024-02-23
- 2.43.1 → 2.43.7 no changes
-
2.43.0
2023-11-20
- 2.42.1 → 2.42.4 no changes
-
2.42.0
2023-08-21
- 2.38.1 → 2.41.3 no changes
-
2.38.0
2022-10-02
- 2.35.1 → 2.37.7 no changes
-
2.35.0
2022-01-24
- 2.30.1 → 2.34.8 no changes
-
2.30.0
2020-12-27
- 2.29.1 → 2.29.3 no changes
-
2.29.0
2020-10-19
- 2.28.1 no changes
-
2.28.0
2020-07-27
- 2.27.1 no changes
-
2.27.0
2020-06-01
- 2.21.1 → 2.26.3 no changes
-
2.21.0
2019-02-24
- 2.13.7 → 2.20.5 no changes
-
2.12.5
2017-09-22
- 2.10.5 → 2.11.4 no changes
-
2.9.5
2017-07-30
- 2.5.6 → 2.8.6 no changes
-
2.4.12
2017-05-05
- 2.3.10 no changes
-
2.2.3
2015-09-04
- 2.1.4 no changes
-
2.0.5
2014-12-17
SYNOPSIS
gitinit[-q|--quiet] [--bare] [--template=<mallkatalog>] [--separate-git-dir<git-kat>] [--object-format=<format>] [--ref-format=<format>] [-b<gren-namn> |--initial-branch=<grennamn>] [--shared[=<behörigheter>]] [<katalog>]
BESKRIVNING
Det här kommandot skapar ett tomt Git-kodförråd - i princip en .git-katalog med underkataloger för objects, refs/heads, refs/tags och mallfiler. En initial branch utan några incheckningar kommer att skapas (se alternativet --initial-branch nedan för dess namn).
Om miljövariabeln GIT_DIR är satt anger den en sökväg som ska användas i stället för ./.git för basen av kodförrådet.
Om objektlagringskatalogen anges via miljövariabeln GIT_OBJECT_DIRECTORY sen skapas sha1-katalogerna under; annars används standardkatalogen $GIT_DIR/objects.
Att köra git init i ett befintligt kodförråd är säkert. Det kommer inte att skriva över saker som redan finns där. Den främsta anledningen till att köra git init igen är att hämta nyligen tillagda mallar (eller att flytta kodförråd till en annan plats om --separate-git-dir anges).
ALTERNATIV
-
-q -
--quiet -
Skriv endast ut fel- och varningsmeddelanden; all annan utmatning kommer att undertryckas.
-
--bare -
Skapa ett bart kodförråd. Om
GIT_DIR-miljön inte är inställd, sätts den till den aktuella arbetskatalogen. -
--object-format=<format> -
Ange det givna objektet <format> (hashalgoritm) för kodförrådet. Giltiga värden är
sha1och (om aktiverat)sha256.sha1är standardvärdet.Obs: För närvarande finns det ingen interoperabilitet mellan SHA-256-kodförråd och SHA-1-kodförråd.
Historiskt sett varnade vi för att SHA-256-kodförråd senare kan behöva bakåtinkompatibla ändringar när vi introducerar sådana interoperabilitetsfunktioner. Idag förväntar vi oss bara kompatibla ändringar. Dessutom, om sådana ändringar visar sig vara nödvändiga, kan man förvänta sig att SHA-256-kodförråd som skapats med dagens Git kommer att kunna användas av framtida versioner av Git utan dataförlust.
-
--template=<mallkatalog> -
Ange katalogen från vilken mallarna ska användas. (Se avsnittet "MALLKATALOG" nedan.)
-
--separate-git-dir=<git-kat> -
I stället för att initiera kodförrådet som en katalog till antingen
$GIT_DIReller./.git/, skapa en textfil där som innehåller sökvägen till själva kodförrådet. Denna fil fungerar som en filsystemsoberoende symbolisk Git-länk till kodförrådet.Om detta är en ominitialisering, kodförrådet kommer att flyttas till den angivna sökvägen.
-
-b<gren-namn> -
--initial-branch=<gren-namn> -
Använd <gren-namn> för den initiala grenen i det nyskapade kodförrådet. Om inget namn anges, återgå till standardnamnet (för närvarande
master, men detta kommer att ändras tillmainnär Git 3.0 släpps). Standardnamnet kan anpassas via konfigurationsvariabelninit.defaultBranch. -
Ange att Git-kodförrådet ska delas mellan flera användare. Detta gör det möjligt för användare som tillhör samma grupp att skicka in i det kodförrådet. När den anges ställs konfigurationsvariabeln
core.sharedRepositoryin så att filer och kataloger under$GIT_DIRskapas med de begärda behörigheterna. När den inte anges, kommer Git att använda behörigheter som rapporteras avumask(2).Alternativet kan ha följande värden, med standardvärde
groupom inget värde anges:-
umask -
false -
Använd behörigheter som rapporteras av
umask(2). Standardvärdet när--sharedinte anges. -
group -
true -
Gör kodförrådet skrivbart i grupp (och
g+sx, eftersom git-gruppen kanske inte är den primära gruppen för alla användare). Detta används för att lätta upp behörigheterna för ett annars säkertumask(2)-värde. Observera att umasken fortfarande gäller för de andra behörighetsbitarna (t.ex. om umask är0022, kommer användning avgroupinte att ta bort läsbehörigheter från andra (icke-grupp) användare). Se0xxxför hur du exakt anger kodförrådets behörigheter. -
all -
world -
everybody -
Samma som
group, men gör arkivet läsbart för alla användare. - <behörigheter>
-
<behörigheter> <perm> är ett 3-siffrigt oktalt tal prefixerat med
0och varje fil kommer att ha läget <behörigheter>. <behörigheter> kommer att åsidosätta användarnasumask(2) värde (och inte bara lossa behörigheter somgroupochallgör).0640kommer att skapa ett kodförråd som är gruppläsbart, men inte gruppskrivbart eller tillgängligt för andra.0660kommer att skapa ett kodförråd som är läsbart och skrivbart för den aktuella användaren och gruppen, men oåtkomligt för andra (kataloger och körbara filer får sinxbit frånrbiten för motsvarande klasser av användare).
-
Som standard är konfigurationsflaggan receive.denyNonFastForwards aktiverad i delade kodförråd, så att du inte kan tvinga fram att skicka utan snabbspolning ("push") till dem.
Om du anger en <katalog>, körs kommandot inuti den. Om den här katalogen inte finns, kommer den att skapas.
MALLKATALOG
Filer och kataloger i mallkatalogen vars namn inte börjar med en punkt kommer att kopieras till $GIT_DIR efter att den har skapats.
Mallkatalogen kommer att vara en av följande (i ordning):
-
argumentet som ges med alternativet
--template; -
innehållet i miljövariabeln
$GIT_TEMPLATE_DIR; -
konfigurationsvariabeln
init.templateDir; eller -
standardmallkatalogen:
/usr/share/git-core/templates.
Standardmallkatalogen innehåller en viss katalogstruktur, föreslagna "exkluderingsmönster" (se gitignore[5]) och exempel på krok-filer.
Exempelkrokar är inaktiverade som standard. För att aktivera en av dem, byt namn på den genom att ta bort suffixet .sample.
Se githooks[5] för mer allmän information om krok-exekvering.
EXEMPEL
- Starta ett nytt Git-kodförråd för en befintlig kodbas
-
$ cd /sokvag/till/min/kodbas $ git init (1) $ git add . (2) $ git commit (3)
-
Skapa en
/sokvag/till/min/kodbas/.git-katalog. -
Lägg till alla befintliga filer i indexet.
-
Registrera det ursprungliga tillståndet som den första incheckning i historien.
-
KONFIGURATION
Allt under den här raden i det här avsnittet är selektivt inkluderat från dokumentationen git-config[1]. Innehållet är detsamma som det som finns där:
-
init.templateDir -
Ange katalogen från vilken mallarna ska kopieras.
-
init.defaultBranch -
Tillåter att åsidosätta standardgrennamnet, t.ex. vid initialisering av ett nytt kodförråd.
-
init.defaultObjectFormat -
Tillåter att åsidosätta standardobjektformatet för nya arkiv. Se
--object-format=i git-init[1]. Både kommandoradsalternativet och miljövariabelnGIT_DEFAULT_HASHhar företräde framför denna konfiguration. -
init.defaultRefFormat -
Tillåter åsidosättning av standardformatet för referenslagring för nya arkiv. Se
--ref-format=i git-init[1]. Både kommandoradsalternativet och miljövariabelnGIT_DEFAULT_REF_FORMAThar företräde framför denna konfiguration.
GIT
En del av git[1]-sviten