Zoeken…


Syntaxis

  • git clone [<options>] [-] <repo> [<dir>]
  • git clone [--template = <template_directory>] [-l] [-s] [--no-hardlinks] [-q] [-n] [--bare] [--mirror] [-o <naam> ] [-b <naam>] [-u <upload-pack>] [--referentie <repository>] [--dissociate] [--separate-git-dir <git dir>] [--depth <depth> ] [- [no-] single-branch] [- recursive | --recurse-submodules] [- [no-] shallow-submodules] [--jobs <n>] [-] <repository> [<directory>]

Ondiepe kloon

Het klonen van een enorme repository (zoals een project met meerdere jaren geschiedenis) kan lang duren of mislukken vanwege de hoeveelheid gegevens die moet worden overgedragen. In gevallen waarin u niet de volledige geschiedenis beschikbaar hoeft te hebben, kunt u een ondiepe kloon doen:

git clone [repo_url] --depth 1

De bovenstaande opdracht haalt alleen de laatste commit uit de externe repository.

Houd er rekening mee dat u mogelijk fusies in een ondiepe repository niet kunt oplossen. Het is vaak een goed idee om minstens evenveel commits te nemen als je nodig hebt om terug te gaan om fusies op te lossen. Om bijvoorbeeld in plaats daarvan de laatste 50 commits te krijgen:

git clone [repo_url] --depth 50

Later, indien nodig, kunt u de rest van de repository ophalen:

1.8.3
git fetch --unshallow     # equivalent of git fetch -–depth=2147483647
                          # fetches the rest of the repository
1.8.3
git fetch --depth=1000    # fetch the last 1000 commits

Reguliere kloon

Typ het volgende om de hele repository inclusief de volledige geschiedenis en alle branches te downloaden:

git clone <url>

In het bovenstaande voorbeeld wordt het in een map geplaatst met dezelfde naam als de naam van de gegevensopslagruimte.

Typ het volgende om de repository te downloaden en op te slaan in een specifieke map:

git clone <url> [directory]

Ga voor meer informatie naar Een repository klonen .

Kloon een specifieke tak

Om een specifieke tak van een repository te klonen, typt u --branch <branch name> voor de repository url:

git clone --branch <branch name> <url> [directory]

Typ -b om de steno-optie voor --branch te gebruiken. Deze opdracht downloadt de hele repository en checkt <branch name> .

Om schijfruimte te besparen, kunt u geschiedenis klonen die alleen naar een enkele vertakking leidt met:

git clone --branch <branch_name> --single-branch <url> [directory]

Als --single-branch niet wordt toegevoegd aan de opdracht, wordt de geschiedenis van alle branches gekloond in [directory] . Dit kan een probleem zijn met grote opslagplaatsen.


Om later de vlag --single-branch ongedaan te maken en de rest van de repository op te halen, gebruik je de opdracht:

git config remote.origin.fetch "+refs/heads/*:refs/remotes/origin/*"
git fetch origin

Kloon recursief

1.6.5
git clone <url> --recursive

Kloneert de repository en kloneert ook alle submodules. Als de submodules zelf extra submodules bevatten, zal Git deze ook klonen.

Kloon met behulp van een proxy

Als je bestanden met git onder een proxy moet downloaden, kan het instellen van proxyserver voor het hele systeem niet voldoende zijn. Je kunt ook het volgende proberen:

git config --global http.proxy http://<proxy-server>:<port>/


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow