-l –local
gdy repozytorium do klonowania znajduje się na lokalnej maszynie,ta flaga omija normalny mechanizm transportowy „Git aware” i klonuje repozytorium, wykonując kopię Head i wszystkiego w katalogach objects i refs.Pliki w katalogu .git/objects/
są twardo połączone, aby zaoszczędzić miejsce, gdy jest to możliwe.
Jeśli repozytorium jest określone jako ścieżka lokalna (np./path/to/repo
), jest to wartość domyślna,a opcja — local jest zasadniczo nieaktywna., Jeśli therepository jest podany jako URL, to znacznik ten jest ignorowany (i nigdy nie korzystamy z lokalnych optymalizacji). Podanie --no-local
będzie domyślne, gdy podano /path/to/repo
, używając zamiast tego transportu regularGit.
–no-hardlinks
wymusza proces klonowania z repozytorium na systemie plików lokalnych, aby skopiować pliki z katalogu.git/objects
zamiast używać hardlinków. Może to być pożądane, jeśli próbujesz utworzyć kopię zapasową swojego repozytorium.,
– s –shared
Gdy repozytorium do sklonowania znajduje się na komputerze lokalnym,zamiast używać twardych łączy, automatycznie ustaw.git/objects/info/alternates
, aby udostępniać obiekty z repozytorium źródłowym. Wynikowy repozytorium uruchamia się bez żadnego własnego obiektu.
uwaga: jest to prawdopodobnie niebezpieczna operacja; nie używaj go, jeśli nie rozumiesz, co robi. Jeśli sklonujesz repository używając tej opcji, a następnie usuniesz gałęzie (lub użyjesz innej komendy Git, która sprawi, że jakikolwiek istniejący commit nie zostanie odeferowany) w repozytorium źródłowym, niektóre obiekty mogą zostać odeferowane (lub zwisają).,Obiekty te mogą zostać usunięte przez zwykłe operacje Gita (takie jak git commit
), które automatycznie wywołują git maintenance run --auto
. (Seegit-maintenance.) Jeśli obiekty te zostaną usunięte i zostaną odwołane przez sklonowane repozytorium, sklonowane repozytorium ulegnie uszkodzeniu.
zauważ, że uruchomienie git repack
bez opcji --local
w repozytorium z --shared
spowoduje skopiowanie obiektów z repozytorium źródłowego do pakietu sklonowanego repozytorium, usuwając oszczędność miejsca na dysku clone --shared
.,Jest to jednak bezpieczne, aby uruchomić git gc
, który używa opcji --local
bydefault.
Jeśli chcesz zerwać zależność od repozytorium sklonowanego za pomocą--shared
onits source repozytorium, możesz po prostu uruchomićgit repack -a
, aby skopiować allobjects z repozytorium źródłowego do pakietu w sklonowanym repozytorium.,
–reference<repozytorium>
Jeśli repozytorium referencji znajduje się na komputerze lokalnym,automatycznie skonfiguruj.git/objects/info/alternates
do przechowywania obiektów z repozytorium referencji. Użycie już istniejącego repozytorium jako alternatywy będzie wymagało mniejszej liczby obiektów do skopiowania z repozytorium podczas klonowania, co zmniejszy koszty sieci i lokalnego przechowywania danych.Podczas używania--reference-if-able
, nieistniejący katalog jest pomijany z ostrzeżeniem zamiast przerywania klonu.,
Uwaga: patrz uwaga dla opcji--shared
, a także--dissociate
.
–dissociate
Wypożycz obiekty z repozytoriów referencyjnych określonych opcjami--reference
tylko w celu ograniczenia transferu sieciowego i zaprzestania pożyczania od nich po utworzeniu klona, wykonując niezbędne lokalne kopie pożyczonych obiektów., Thisopcja może być również użyta podczas klonowania lokalnie zpozycji, która już pożycza obiekty zinnego repozytorium—nowe repozytorium pożyczy obiekty zsamego repozytorium, a ta opcja może być użyta, aby zatrzymać odtwarzanie.
-q –quiet
działaj cicho. Postęp nie jest raportowany do strumienia standarderror.
-v –verbose
Uruchom verbosely. Nie ma wpływu na raportowanie stanu postępu do standardowego strumienia błędów.,
–progress
Status Progress jest domyślnie zgłaszany w standardowym strumieniu błędów, gdy jest dołączony do terminala, chyba że podano--quiet
. Ta flaga wymusza status postępu, nawet jeśli standardowy strumień błędów nie jest kierowany do terminala.
–server-option=<option>
przesyła podany łańcuch do serwera podczas komunikowania się za pomocą Protocol w wersji 2. Podany łańcuch nie może zawierać Nul ani LFcharacter. Obsługa opcji serwera, w tym nie znanych, jest specyficzna dla serwera.,Gdy podano wiele --server-option=<option>
, wszystkie są ustawione na drugą stronę w kolejności podanej w wierszu poleceń.
-n –no-checkout
Po zakończeniu klonowania nie jest wykonywana Kontrola HEAD.
–bare
tworzy gołe repozytorium Gita. Oznacza to, że zamiast tworzyć <directory>
I umieszczać pliki administracyjne w <directory>/.git
, zrób <directory>
sam $GIT_DIR
. Oznacza to oczywiście --no-checkout
, ponieważ nie ma gdzie sprawdzić działającego drzewa.,Również odgałęzienia w zdalnym sterowniku są kopiowane bezpośrednio do odpowiednich lokalnych odgałęzień, bez mapowania ich do refs/remotes/origin/
. Gdy ta opcja jest używana, nie są tworzone ani gałęzie zdalnego śledzenia, ani powiązane zmienne konfiguracji.
— sparse
Zainicjalizuj plik sparse-checkout tak, aby workingdirectory zaczynał się tylko z plikami w źródle repozytorium. Plik sparse-checkout może w razie potrzeby powiększać katalog roboczy.,
–filter=<filter-spec>
Użyj funkcji częściowego klonowania i zażądaj, aby serwer wysłał podzbiór osiągalnych obiektów zgodnie z danym filtrem obiektu.Podczas używania --filter
, dostarczony <filter-spec>
jest używany do częściowego filtra klonowania. Na przykład --filter=blob:none
wyfiltruje wszystkie obiekty BLOB (zawartość pliku), dopóki nie będą potrzebne przez Git. Ponadto--filter=blob:limit=<size>
odfiltruje wszystkie obiekty BLOB o najmniejszym rozmiarze <size>
., Aby uzyskać więcej informacji na temat specyfikacji filtrów, zobacz--filter
opcja w git-rev-list.
–mirror
Ustawia mirror repozytorium źródłowego. Oznacza to --bare
.W porównaniu do --bare
, --mirror
nie tylko mapuje lokalne gałęzie źródła do lokalnych gałęzi celu, mapuje wszystkie refy (w tym gałęzie śledzenia notatek, notatki itp.) i ustawia konfigurację refspec tak, że wszystkie te refy są nadpisywane przez git remote update
w repozytorium arget.,
-o <name> –origin <name>
Instead of using the remote name origin
to keep track of the upstreamrepository, use <name>
. Overrides clone.defaultRemoteName
from theconfig.,
-b <name> –branch <name>
zamiast wskazywać nowo utworzoną głowicę na gałąź wskazywaną przez sklonowaną głowicę repozytorium, wskaż <name>
W repozytorium non-bare jest to gałąź, która zostanie sprawdzona.--branch
może również pobierać znaczniki i odłączać głowicę od wynikowego repozytorium.,
-u <upload-pack> –upload-pack <upload-pack>
gdy podano, a repozytorium do klonowania z ssh, określa niestandardową ścieżkę dla commandrun na drugim końcu.
–template=<template_directory>
określa katalog, z którego będą używane szablony;(zobacz sekcję „TEMPLATE DIRECTORY” w git-init.,)
-c <klucz>=<wartość> –config <klucz>=<wartość>
Ustaw zmienną konfiguracyjną w nowo utworzonym repozytorium. Klucz jest w tym samym formacie, co oczekiwany przez Sigit-config (np. core.eol=true
)., Jeśli dla tego samego klucza podano wiele wartości, każda wartość zostanie zapisana do pliku konfiguracyjnego. To sprawia, że bezpieczne, na przykład, dodaćDodatkowe refspecs pobierania do pilota origin.
ze względu na ograniczenia bieżącej implementacji, niektóre zmienne konfiguracyjne działają dopiero po początkowym pobraniu i kasie.Zmienne konfiguracyjne, o których wiadomo, że nie działają, to:remote.<name>.mirror
oraz remote.<name>.tagOpt
. Zamiast tego użyj opcji --mirror
I --no-tags
.,
–depth<depth>
Utwórz płytki klon z historią skróconą do określonej liczby zatwierdzeń. Implikuje --single-branch
chyba że--no-single-branch
jest podane do pobrania historii w pobliżu końcówek wszystkich gałęzi. Jeśli chcesz klonować submodule płytko, przekaż również --shallow-submodules
.
–shallow-since=<date>
Utwórz płytki klon z historią po określonym czasie.,
— shallow-exclude=<revision>
Utwórz klon shallow z historią, wyłączając commitsreachable z podanej zdalnej gałęzi lub znacznika. Tę opcjęmożna podać wiele razy.
–single-branch
klonuje tylko historię prowadzącą do wierzchołka pojedynczej gałęzi,określoną przez opcję--branch
lub pilota primarybranchHEAD
wskazuje na.Dalsze pobieranie do wynikowego repozytorium zaktualizuje tylko gałąź śledzenia notatki dla gałęzi, której ta opcja została użyta do początkowego klonowania., Jeśli głowica na zdalnym nie wskazywała na żadną gałąź podczas klonowania--single-branch
, nie zostanie utworzona gałąź zdalnego śledzenia.
–no-tags
może być używany w połączeniu z--single-branch
do klonowania i utrzymywania gałęzi bez odniesień innych niż pojedyncza clonedbranch. Jest to przydatne np. do utrzymania minimalnych klonów domyślnej gałęzi jakiegoś repozytorium do indeksowania wyszukiwania.
–recurse-submodules
Po utworzeniu klonu inicjalizuj i Klonuj podmoduleswithin na podstawie podanej ścieżki., Jeśli żadna ścieżka nie jest udostępniona, wszystkie moduły podrzędne są inicjalizowane i klonowane.Opcja ta może być podana wiele razy dla ścieżek składających się z wielu wpisów. Wynikowy klon masubmodule.active
ustawiony na podaną pathspec, or „.”(czyli wszystkie podmoduły), jeżeli podano nopathspec.
moduły podrzędne są inicjowane i klonowane przy użyciu ustawień domyślnych. Jest to równoznaczne z uruchomieniemgit submodule update --init --recursive <pathspec>
natychmiast po zakończeniu klonowania. Opcja ta jest ignorowana, jeśli sklonowane repozytorium nie ma drzewa roboczego/kasy (np., jeśli podano którekolwiek z --no-checkout
/-n
, --bare
lub --mirror
)
–shallow-submodules
wszystkie submodules,które są sklonowany będzie płytki o głębokości 1.
–zdalne moduły podrzędne
wszystkie moduły podrzędne, które są sklonowane, będą używać statusu gałęzi śledzenia remote do aktualizacji modułu podrzędnego, zamiast nagranego SHA-1. Odpowiednik przejścia --remote
dogit submodule update
.,
–separate-git-dir=<git dir>
zamiast umieszczać sklonowane repozytorium w podanym katalogu, umieść sklonowane repozytorium w podanym katalogu,a następnie utwórz do niego dowiązanie symboliczne dla systemu plików.W rezultacie repozytorium Git może być oddzielone od workingtree.
-j<n> –jobs<n>
liczba pobranych modułów podrzędnych w tym samym czasie.Domyślnie jest to opcja submodule.fetchJobs
.,
<repozytorium>
(prawdopodobnie zdalne) repozytorium do sklonowania z. Więcej informacji na temat konkretnych lokalizacji można znaleźć w sekcji adresy URL.
<katalog>
Leave a Reply