Angielskifrancuskihiszpański

Ad


Ulubiona usługa OnWorks

git-rev-parse - Online w chmurze

Uruchom git-rev-parse u dostawcy bezpłatnego hostingu OnWorks przez Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS

Jest to polecenie git-rev-parse, które można uruchomić u dostawcy bezpłatnego hostingu OnWorks przy użyciu jednej z naszych wielu darmowych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS

PROGRAM:

IMIĘ


git-rev-parse - Wybierz i masuj parametry

STRESZCZENIE


odrzutowiec przeanalizować [ --opcja ] ...

OPIS


Wiele porcelanowych poleceń Gita przyjmuje mieszankę flag (tj. parametrów zaczynających się od a
myślnik -) oraz parametry przeznaczone dla instrumentu bazowego odrzutowiec lista rewizji polecenie, którego używają wewnętrznie
oraz flagi i parametry dla innych poleceń, których używają dalej odrzutowiec lista rewizji, To
Polecenie służy do ich rozróżniania.

OPCJE


Działanie Tryby pracy
Każda z tych opcji musi pojawić się najpierw w wierszu poleceń.

--parseopt
Zastosowanie odrzutowiec przeanalizować w trybie parsowania opcji (patrz sekcja PARSEOPTA poniżej).

--sq-cytat
Zastosowanie odrzutowiec przeanalizować w trybie cytowania powłoki (patrz sekcja SQ-QUOTE poniżej). W odróżnieniu
opcja --sq poniżej, ten tryb tylko cytuje. Nic innego nie robi się, by dowodzić
wkład.

Opcje dla --parseopt
--zachowaj-dashdash
Ma znaczenie tylko w trybie --parseoptu. Mówi parserowi opcji, aby wysłał echo pierwszego --
spotkałem się zamiast go pominąć.

--stop-przy-nie-opcja
Ma znaczenie tylko w trybie --parseoptu. Pozwala parserowi opcji zatrzymać się na pierwszym miejscu
argument bez opcji. Może to służyć do analizowania podkomend, które przyjmują opcje
sami.

-- utknął-długi
Ma znaczenie tylko w trybie --parseoptu. Wypisuj opcje w ich długiej formie, jeśli
dostępnych, a ich argumenty utknęły.

Opcje dla Filtracja
--tylko obroty
Nie wysyłaj flag i parametrów, które nie są przeznaczone do odrzutowiec lista rewizji dowództwo.

--brak obrotów
Nie wysyłaj flag i parametrów przeznaczonych dla odrzutowiec lista rewizji dowództwo.

--flagi
Nie wysyłaj parametrów bez flag.

--bez flag
Nie wyprowadzaj parametrów flag.

Opcje dla Wydajność
--domyślny
Jeśli nie ma parametru podanego przez użytkownika, użyj zamiast.

--prefiks
Zachowuj się jak gdyby odrzutowiec przeanalizować został wywołany z podkatalog pracy
drzewo. Wszelkie względne nazwy plików są rozwiązywane tak, jakby były poprzedzone przez i będzie
wydrukowane w tej formie.

Można to wykorzystać do konwersji argumentów na polecenie uruchamiane w podkatalogu, tak aby:
nadal może być używany po przejściu na najwyższy poziom repozytorium. Na przykład:

prefix=$(git rev-parse --show-prefix)
cd "$(git rev-parse --show-toplevel)"
eval "set -- $(git rev-parse --sq --prefix "$prefix" "$@")"

--zweryfikować
Sprawdź, czy podany jest dokładnie jeden parametr i czy można go przekształcić w surowy
20-bajtowy SHA-1, którego można użyć do uzyskania dostępu do bazy danych obiektów. Jeśli tak, wyślij go do
standardowe wyjście; w przeciwnym razie błąd się.

Jeśli chcesz się upewnić, że dane wyjściowe faktycznie nazywają obiekt w twoim obiekcie?
bazy danych i/lub mogą być używane jako określony typ obiektu, którego potrzebujesz, możesz dodać
^{type} operator obierania do parametru. Na przykład git rev-parse „$VAR^{commit}”
upewni się, że $VAR nazywa istniejący obiekt, który jest zatwierdzeniem (tj. zatwierdzeniem lub
z adnotacją, która wskazuje na zatwierdzenie). Aby upewnić się, że $VAR nazywa istniejącym
obiekt dowolnego typu, można użyć git rev-parse "$VAR^{object}".

-q, --cichy
Ma sens tylko w trybie --verify. Nie wyświetlaj komunikatu o błędzie, jeśli pierwszy argument
nie jest prawidłową nazwą obiektu; zamiast tego po cichu wyjdź z niezerowym statusem. SHA-1 dla
prawidłowe nazwy obiektów są wypisywane na standardowe wyjście w przypadku powodzenia.

--kwadrat
Zwykle wyjście jest tworzone po jednym wierszu na flagę i parametr. Ta opcja sprawia, że ​​wyjście jest
pojedyncza linia, prawidłowo cytowana do zużycia przez powłokę. Przydatne, gdy oczekujesz swojego
parametr zawierający spacje i znaki nowej linii (np. podczas używania kilofa -S z odrzutowiec
różnica-*). W przeciwieństwie do opcji --sq-quote, dane wejściowe polecenia są nadal interpretowane
jak zwykle.

--nie
Wyświetlając nazwy obiektów, poprzedź je ^ i striptiz ^ prefiks z nazw obiektów
które już mają.

--abbrev-ref[=(ścisłe|luźne)]
Niedwuznaczna krótka nazwa nazwy obiektów. Opcja core.warnAmbiguousRefs to
służy do wyboru trybu ścisłego skrótu.

--short, --short=liczba
Zamiast wyprowadzać pełne wartości SHA-1 nazw obiektów, spróbuj je skrócić do:
krótsza unikalna nazwa. Jeśli nie określono długości, 7 jest używane. Minimalna długość to 4.

--symboliczny
Zwykle nazwy obiektów są wyprowadzane w formie SHA-1 (możliwe ^ prefiks); ten
opcja sprawia, że ​​są one drukowane w formie jak najbardziej zbliżonej do oryginalnego wejścia.

--symboliczne-pełna-nazwa
Jest to podobne do --symbolic, ale pomija dane wejściowe, które nie są refs (np. branch lub
nazwy znaczników; lub wyraźniej ujednoznaczniając formę „główni/mistrzowie”, gdy chcesz
nazwij gałąź "master", gdy istnieje niestety nazwany tag "master") i pokaż
je jako pełne nazwy ref (np. "refs/heads/master").

Opcje dla Obiekty
--wszystko
Pokaż wszystkie referencje znalezione w refs/.

--branches[=wzór], --tags[=wzór], --remotes[=wzór]
Pokaż odpowiednio wszystkie gałęzie, tagi lub gałęzie zdalnego śledzenia (np. znalezione odnośniki)
w odnośnikach/nagłówkach, odnośnikach/tagach lub odnośnikach/pilotach).

Jeśli podano wzorzec, pokazywane są tylko odnośniki pasujące do danej kuli powłoki. Jeśli
wzorzec nie zawiera znaku kulistego (?, * lub [), jest zamieniany na prefiks
dopasuj przez dołączenie /*.

--glob=wzór
Pokaż wszystkie odnośniki pasujące do wzoru kuli powłoki. Jeśli wzór się nie uruchamia
z refs/, to jest automatycznie dodawane. Jeśli wzór nie zawiera
znak globbing (?, * lub [), jest przekształcany w dopasowanie prefiksu przez dołączenie /*.

--wyklucz=
Nie uwzględniaj dopasowania ref że następne --all, --branches, --tags,
W przeciwnym razie rozważyłoby to --remotes lub --glob. Powtórzenia tej opcji kumulują się
wzorce wykluczania do następnego --all, --branches, --tags, --remotes lub --glob
opcja (inne opcje lub argumenty nie usuwają nagromadzonych wzorców).

Podane wzorce nie powinny zaczynać się od odnośników/nagłówków, odnośników/tagów ani odnośników/pilotów, gdy
stosowane odpowiednio do --branches, --tags lub --remotes i muszą zaczynać się od
refs/ po zastosowaniu do --glob lub --all. Jeśli śledzący /* jest przeznaczony, musi być podany
jawnie.

--ujednoznacznie=
Pokaż każdy obiekt, którego nazwa zaczyna się od podanego przedrostka. ten musi być w
co najmniej 4 cyfry szesnastkowe, aby uniknąć wymieniania każdego obiektu w
repozytorium przez pomyłkę.

Opcje dla Akta
--lokalne-śr.-zmienne
Wymień zmienne środowiskowe GIT_*, które są lokalne dla repozytorium (np. GIT_DIR lub
GIT_WORK_TREE, ale nie GIT_EDITOR). Wymienione są tylko nazwy zmiennych, nie
ich wartość, nawet jeśli są ustalone.

--git-dir
Pokaż $GIT_DIR, jeśli zdefiniowano. W przeciwnym razie pokaż ścieżkę do katalogu .git. Ścieżka
pokazany, gdy jest względny, odnosi się do bieżącego katalogu roboczego.

Jeśli $GIT_DIR nie jest zdefiniowany, a bieżący katalog nie jest wykrywany jako leżący w Git
repozytorium lub drzewo robocze drukuje komunikat na stderr i kończy pracę z niezerowym statusem.

--git-common-dir
Pokaż $GIT_COMMON_DIR, jeśli zdefiniowano, w przeciwnym razie $GIT_DIR.

--jest-wewnątrz-git-dir
Gdy bieżący katalog roboczy znajduje się poniżej katalogu repozytorium, wypisz "prawda",
inaczej „fałsz”.

--jest-wewnątrz-drzewo-pracy
Gdy bieżący katalog roboczy znajduje się w drzewie roboczym repozytorium, drukuj
„prawda”, w przeciwnym razie „fałsz”.

--to-nagie-repozytorium
Gdy repozytorium jest gołe, drukuj „prawda”, w przeciwnym razie „fałsz”.

--resolve-git-dir
Sprawdź, czy jest poprawnym repozytorium lub plikiem git wskazującym na prawidłowe repozytorium,
i wydrukuj lokalizację repozytorium. Gdyby jest plikiem git, to rozwiązany
wypisywana jest ścieżka do rzeczywistego repozytorium.

--git-ścieżka
Rozwiąż „$GIT_DIR/ " i przyjmuje inne zmienne relokacji ścieżki, takie jak
$GIT_OBJECT_DIRECTORY, $GIT_INDEX_FILE... na konto. Na przykład, jeśli
Zmienna $GIT_OBJECT_DIRECTORY jest ustawiona na /foo/bar, a następnie „git rev-parse --git-path objects/abc”
zwraca /foo/bar/abc.

--pokaż-cdup
Gdy polecenie jest wywoływane z podkatalogu, pokaż ścieżkę najwyższego poziomu
katalog względem bieżącego katalogu (zazwyczaj sekwencja "../" lub an
pusta struna).

--pokaż-przedrostek
Gdy polecenie jest wywoływane z podkatalogu, pokaż ścieżkę bieżącego
katalog względem katalogu najwyższego poziomu.

--pokaż najwyższy poziom
Pokaż bezwzględną ścieżkę katalogu najwyższego poziomu.

--ścieżka-współdzielonego indeksu
Pokaż ścieżkę do udostępnionego pliku indeksu w trybie podzielonego indeksu lub pustą, jeśli nie jest w
tryb podziału indeksu.

Inne Opcje
--since=ciąg daty, --after=ciąg daty
Przeanalizuj ciąg daty i wypisz odpowiedni parametr --max-age= dla odrzutowiec
lista rewizji.

--until=ciąg daty, --before=ciąg daty
Przeanalizuj ciąg daty i wypisz odpowiedni parametr --min-age= dla odrzutowiec
lista rewizji.

...
Flagi i parametry do przeanalizowania.

OKREŚLANIE REWIZJE


Parametr rewizji zazwyczaj, ale niekoniecznie, nazywa obiekt commit. To używa
co się nazywa an dużym SHA-1 składnia. Oto różne sposoby literowania nazw obiektów. ten
te wymienione na końcu tej listy nazywają drzewa i obiekty blob zawarte w zatwierdzeniu.

np dae86e1950b1277e545cee180551750029cfe735, dae86e
Pełna nazwa obiektu SHA-1 (40-bajtowy ciąg szesnastkowy) lub wiodący podciąg, który
jest unikalny w repozytorium. Np. dae86e1950b1277e545cee180551750029cfe735 i
dae86e oba nazywają ten sam obiekt zatwierdzenia, jeśli nie ma innego obiektu w twoim repozytorium
którego nazwa obiektu zaczyna się od dae86e.

np v1.7.4.2-679-g3bee7fb
Dane wyjściowe z git opisują; tj. najbliższy tag, po którym opcjonalnie następuje myślnik i a
liczba zatwierdzeń, po których następuje myślnik, a gi skróconą nazwę obiektu.

np mistrz, szefowie/mistrz, ref/headers/master
Symboliczna nazwa ref. Np mistrz zazwyczaj oznacza obiekt zatwierdzenia, do którego odwołuje się
ref/headers/master. Jeśli zdarzy ci się mieć jedno i drugie szefowie/mistrz i tagi/master, Można
wyraźnie powiedzieć szefowie/mistrz by powiedzieć Gitowi, o którą z nich chodzi. Gdy niejednoznaczne, a
jest ujednoznaczniona, biorąc pierwszy mecz zgodnie z następującymi zasadami:

1. Gdyby $GIT_DIR/ istnieje, to masz na myśli (zazwyczaj jest to przydatne tylko .)
dla GŁOWA, FETCH_HEAD, ORIG_HEAD, MERGE_HEAD i CHERRY_PICK_HEAD);

2. inaczej, ref/ jeśli istnieje;

3. inaczej, ref/tagi/ jeśli istnieje;

4. inaczej, referencje/głowy/ jeśli istnieje;

5. inaczej, ref/piloty/ jeśli istnieje;

6. inaczej, ref/piloty/ /GŁOWA jeśli istnieje.

GŁOWA nazywa zatwierdzenie, na którym oparłeś zmiany w drzewie roboczym.
FETCH_HEAD rejestruje gałąź, którą pobrałeś ze zdalnego repozytorium za pomocą swojego
ostatnie wywołanie git fetch. ORIG_HEAD jest tworzony przez polecenia, które poruszają twoją GŁOWA
w drastyczny sposób, aby zapisać pozycję GŁOWA przed ich operacją, więc
że możesz łatwo zmienić końcówkę gałęzi z powrotem do stanu sprzed biegu
Im. MERGE_HEAD rejestruje zatwierdzenie(a), które łączysz ze swoim oddziałem
po uruchomieniu git merge. CHERRY_PICK_HEAD rejestruje zatwierdzenie, którym jesteś
zbieranie wisienek po uruchomieniu git cherry-pick.

Zwróć uwagę, że którykolwiek z ref/* powyższe przypadki mogą pochodzić z $GIT_DIR/odniesienia
katalogu lub z $GIT_DIR/opakowane-refs plik. Podczas gdy kodowanie nazwy ref to
nieokreślony, preferowany jest UTF-8, ponieważ niektóre przetwarzanie danych wyjściowych może przyjmować nazwy ref w
UTF-8.

@
@ sam jest skrótem do GŁOWA.

@{ }np mistrz@{wczoraj}, GŁOWA@{5 minuty temu}
ref, po którym następuje przyrostek @ z podaniem daty w parze nawiasów klamrowych
(na przykład {wczoraj}, {1 miesiąc 2 tydzień 3 dni 1 godzina 1 Dopiero temu} or {1979-02-26
18:30:00}) określa wartość ref w poprzednim momencie. Ten przyrostek może
być używane tylko bezpośrednio po nazwie ref, a ref musi mieć istniejący dziennik
($GIT_DIR/dzienniki/). Zauważ, że to sprawdza stan twojego miejscowy ref w danym
czas; np. co było w Twojej okolicy mistrz oddział w zeszłym tygodniu. Jeśli chcesz popatrzeć
zobowiązania dokonane w określonych okresach, patrz --odkąd i --dopóki.

@{ }np mistrz@{1}
ref, po którym następuje przyrostek @ ze specyfikacją porządkową zawartą w parze nawiasów klamrowych
(na przykład 1 {}, 15 {}) określa n-tą wcześniejszą wartość tego ref. Na przykład mistrz@{1}
jest bezpośrednią wcześniejszą wartością mistrz Podczas mistrz@{5} jest piątą wcześniejszą wartością
mistrz. Ten sufiks może być użyty tylko bezpośrednio po nazwie ref, a ref musi
mieć istniejący dziennik ($GIT_DIR/dzienniki/).

@{ }np @{1}
Możesz użyć @ konstrukcja z pustą częścią ref, aby uzyskać wpis reflog w
obecny oddział. Na przykład, jeśli jesteś w oddziale blabla następnie @{1} oznacza to samo co
blabla@{1}.

@{- }np @{-1}
Konstrukt @{- } oznacza gałąź/zatwierdzenie wyrejestrowane przed prądem
jeden.

@{pod prąd}np mistrz@{pod prąd}, @{u}
Przyrostek @{pod prąd} do nazwy oddziału (krótka forma @{u}) odnosi się do
gałąź, na której ma być budowana gałąź określona przez nazwagałęzi (skonfigurowana
z oddziałem. .zdalny i oddział. .łączyć). Brakująca nazwa oddziału jest domyślnie
obecny.

@{naciskać}np mistrz@{push}, @{naciskać}
Przyrostek @{naciskać} zgłasza gałąź „dokąd byśmy wypchnęli”, gdyby uruchomiono git push
gdy nazwa oddziału została pobrana (lub bieżąca GŁOWA jeśli nie określono nazwy oddziału).
Ponieważ nasze miejsce docelowe push znajduje się w zdalnym repozytorium, oczywiście zgłaszamy lokalne
śledząc gałąź, która odpowiada tej gałęzi (tj. coś w ref/piloty/).

Oto przykład, aby to było bardziej zrozumiałe:

$ git config push.default bieżący
$ git config Remote.pushdefault myfork
$ git checkout -b mybranch Origin/master

$ git rev-parse --symboliczna-pełna-nazwa @{upstream}
ref/piloty/origin/master

$ git rev-parse --symboliczna-pełna-nazwa @{push}
ref/remotes/myfork/mybranch

Zwróć uwagę, że w przykładzie skonfigurowaliśmy trójkątny przepływ pracy, w którym pobieramy z jednego
lokalizację i przesuń do innej. W obiegu innym niż trójkątny @{naciskać} jest taki sam jak
@{pod prąd}i nie ma takiej potrzeby.

^np GŁOWA^, wersja 1.5.1^0
przyrostek ^ do parametru rewizji oznacza pierwszego rodzica tego obiektu zatwierdzenia. ^
oznacza rodzic (tj ^ odpowiada ^1). W ramach szczególnej zasady
^0 oznacza samo zatwierdzenie i jest używane, gdy to nazwa obiektu znacznika
obiekt, który odwołuje się do obiektu zatwierdzenia.

~np mistrz~3
przyrostek ~ do parametru wersji oznacza obiekt zatwierdzenia, który jest NS
przodek generacji nazwanego obiektu commit, podążający tylko za pierwszymi rodzicami. Tj
~3 odpowiada ^^^ co jest równoważne ^1^1^1. Zobacz poniżej dla
ilustracja użycia tego formularza.

^{ }np v0.99.8^{zatwierdź}
przyrostek ^ po którym następuje nazwa typu obiektu ujęta w nawias klamrowy oznacza dereferencję
obiekt w rekurencyjnie aż do obiektu typu zostanie znaleziony lub przedmiot
nie można już wyłuskać (w takim przypadku barf). Na przykład, jeśli jest
zobowiązać się, ^{zatwierdź} opisuje odpowiedni obiekt zatwierdzenia. Podobnie, jeśli
jest drzewiastym, ^{drzewo} opisuje odpowiedni obiekt drzewa. ^0 is
skrót od ^{zatwierdź}.

rev^{obiekt} może być użyty, aby się upewnić obrót silnika nazywa obiekt, który istnieje, bez
wymagające obrót silnika być tagiem i bez wyłuskiwania obrót silnika; ponieważ tag jest już
obiekt, nie trzeba go wyłuskiwać ani razu, aby dostać się do obiektu.

rev^{znacznik} może służyć do zapewnienia, że obrót silnika identyfikuje istniejący obiekt znacznika.

^{}np wersja 0.99.8^{}
przyrostek ^ po którym następuje pusta para nawiasów klamrowych oznacza, że ​​obiekt może być znacznikiem, a
wyłuskaj znacznik rekursywnie, dopóki nie zostanie znaleziony obiekt bez znacznika.

^{/ }np GŁOWA^{/poprawka paskudny błąd}
przyrostek ^ do parametru wersji, po którym następuje para nawiasów klamrowych, która zawiera tekst led
przez ukośnik, jest taki sam jak :/naprawić paskudny pluskwa składnia poniżej, z wyjątkiem tego, że zwraca
najmłodszy pasujący commit, który jest osiągalny z zanim ^.

:/np :/naprawić paskudny pluskwa
Dwukropek, po którym następuje ukośnik, po którym następuje tekst, określa zatwierdzenie, którego komunikat zatwierdzenia
pasuje do określonego wyrażenia regularnego. Ta nazwa zwraca najmłodsze dopasowanie
commit, który jest osiągalny z dowolnego ref. Jeśli komunikat o zatwierdzeniu zaczyna się od ! ty
muszę to powtórzyć; specjalna sekwencja :/!, po którym następuje coś innego niż !, jest
na razie zarezerwowane. Wyrażenie regularne może pasować do dowolnej części komunikatu zatwierdzenia. Do
dopasuj wiadomości zaczynające się od łańcucha, można użyć np. :/^fuj.

:np GŁÓWKA: PRZECZYTAJ, :PRZECZYTAJ, mistrz:./PRZECZYTAJ
przyrostek : po której następuje ścieżka nazywa kropelkę lub drzewo na podanej ścieżce w drzewie-ish
obiekt nazwany przez część przed dwukropkiem. :ścieżka (z pustą częścią przed
dwukropek) to szczególny przypadek składni opisanej dalej: treść zapisana w indeksie
na podanej ścieżce. Ścieżka zaczynająca się od ./ or .. / jest w stosunku do obecnej pracy
informator. Podana ścieżka zostanie przekonwertowana na relację do korzenia drzewa roboczego
informator. Jest to najbardziej przydatne w przypadku zaadresowania obiektu blob lub drzewa z zatwierdzenia lub drzewa, które:
ma taką samą strukturę drzewa jak drzewo robocze.

: :np :0:PRZECZYTAJ, :PRZECZYTAJ
Dwukropek, po którym opcjonalnie następuje numer etapu (od 0 do 3) i dwukropek, po którym następuje a
path, nazywa obiekt blob w indeksie w podanej ścieżce. Brakujący numer etapu (i
dwukropek, który następuje po nim) nazywa wpis etapu 0. Podczas łączenia etap 1 to
wspólny przodek, etap 2 to wersja gałęzi docelowej (zazwyczaj aktualna
branch), a etap 3 to wersja z gałęzi, która jest łączona.

Oto ilustracja autorstwa Jona Loeligera. Oba węzły zatwierdzenia B i C są rodzicami zatwierdzenia
węzeł A. Zatwierdzenia nadrzędne są uporządkowane od lewej do prawej.

GHIJ
\ / \ /
DEF
\ | / \
\ | / |
\|/ |
pne
\ /
\ /
A

A = = A^0
B = A^ = A^1 = A~1
C = A^2 = A^2
re = A^^ = A^1^1 = A~2
E = B^2 = A^^2
F = B^3 = A^^3
G = A^^^ = A^1^1^1 = A~3
H = D^2 = B^^2 = A^^^2 = A~2^2
Ja = F^ = B^3^ = A^^3^
J = F^2 = B^3^2 = A^^3^2

OKREŚLANIE ZAKRESY


Polecenia przeglądania historii, takie jak git log, działają na zestawie zatwierdzeń, a nie tylko na pojedynczym
popełniać. Do tych poleceń, określając pojedynczą wersję z notacją opisaną w
poprzednia sekcja oznacza zestaw zatwierdzeń osiągalny z tego zatwierdzenia, po zatwierdzeniu
łańcuch przodków.

Aby wykluczyć zatwierdzenia osiągalne z zatwierdzenia, przedrostek ^ używana jest notacja. Np ^ r1 r2 znaczy
zobowiązania osiągalne z r2 ale wyklucz te dostępne z r1.

Ta operacja zbioru pojawia się tak często, że istnieje dla niej skrót. Kiedy masz dwa
popełnia r1 i r2 (nazwane zgodnie ze składnią wyjaśnioną w OKREŚLANIE ZMIAN powyżej),
możesz poprosić o zatwierdzenia, które są osiągalne z r2, z wyjątkiem tych, które są osiągalne z
r1 przez ^ r1 r2 i można to zapisać jako r1..r2.

Podobna notacja r1...r2 nazywa się różnicą symetryczną r1 i r2 i jest zdefiniowany jako
r1 r2 --nie $(git baza scalania --wszystko r1 r2). Jest to zestaw zatwierdzeń, które są osiągalne
od jednego z r1 or r2 ale nie z obu.

W tych dwóch skrótach możesz pominąć jeden koniec i ustawić go domyślnie na HEAD. Na przykład,
początek.. to skrót od pochodzenie..GŁOWA i pyta „Co zrobiłem od czasu rozwidlenia z
oddział pochodzenia?” Podobnie, ..początek to skrót od GŁOWA..pochodzenie i pyta „Co zrobiło
pochodzenie zrobić, odkąd się od nich rozwiodłem? "Zauważ, że .. znaczyłoby GŁOWA... GŁOWA który jest pusty
zasięg, który jest zarówno osiągalny, jak i nieosiągalny z HEAD.

Dwa inne skróty do nazywania zestawu utworzonego przez zatwierdzenie i jego rodzicielskie zatwierdzenie
istnieć. ten r1^@ notacja oznacza wszystkich rodziców r1. r1^! zawiera zobowiązanie r1 ale wyklucza wszystko
swoich rodziców.

Podsumowując:


Uwzględnij zatwierdzenia, które są osiągalne od (tj. przodków) .

^
Wyklucz zatwierdzenia, które są osiągalne od (tj. przodków) .

...
Uwzględnij zatwierdzenia, które są osiągalne z ale wyklucz te, które są osiągalne
z . Kiedy albo lub jest pominięty, domyślnie GŁOWA.

...
Uwzględnij zatwierdzenia, które są osiągalne z obu lub ale wyklucz te, które
są osiągalne z obu. Kiedy albo lub jest pominięty, domyślnie GŁOWA.

^@np GŁOWA^@
przyrostek ^ po którym następuje znak „at” jest taki sam, jak wymienienie wszystkich rodziców
(co oznacza, że ​​zawiera wszystko, co jest osiągalne od jego rodziców, ale nie samo zatwierdzenie).

^!np GŁOWA^!
przyrostek ^ po którym następuje wykrzyknik jest tym samym, co zatwierdzenie , a następnie
wszyscy jego rodzice z prefiksem ^ aby je wykluczyć (i ich przodków).

Oto garść przykładów:

DGHD
DFGHIJDF
^GDHD
^DBEIJFB
B..CC
B...CGDEBC
^DBCEIJFBC
CIJFC
C^@ IJF
C^! C
F^! DGHDF

PARSEOPTA


W trybie --parseoptu, odrzutowiec przeanalizować pomaga opcji masowania, aby wprowadzić do skryptów powłoki
te same udogodnienia, które mają wbudowane C. Działa jako normalizator opcji (np. dzieli pojedyncze
przełącza wartości zagregowane), trochę jak getopt(1) tak.

Na standardowym wejściu przyjmuje specyfikację opcji do przeanalizowania i zrozumienia,
i odbija się echem na standardowym wyjściu napis odpowiedni dla sh(1) Ewaluacja do zastąpienia
argumenty ze znormalizowanymi. W przypadku błędu wyświetla użycie na standardowym błędzie
strumień i wychodzi z kodem 129.

Uwaga: Upewnij się, że cytujesz wynik podczas przekazywania go do oceny. Zobacz przykład poniżej.

Wkład utworzony
odrzutowiec przeanalizować --parseopt format wejściowy jest w pełni oparty na tekście. Składa się z dwóch części, oddzielonych
wiersz zawierający tylko --. Wiersze przed separatorem (powinny być co najmniej jeden) to
używane do użytku. Linie po separatorze opisują opcje.

Każda linia opcji ma następujący format:

* ? SP+ pomoc LF


jej format to krótki znak opcji, a następnie długa nazwa opcji oddzielona znakiem A
przecinek. Obie części nie są wymagane, chociaż przynajmniej jedna jest konieczna. Może nie zawierać
którykolwiek z postacie. h, pomoc, suchobieg i f są przykładami poprawnych
.


są z *, =, ? lub !.

· Użyj = jeśli opcja przyjmuje argument.

· Posługiwać się ? co oznacza, że ​​opcja przyjmuje opcjonalny argument. Prawdopodobnie chcesz
użyj trybu --stuck-long, aby móc jednoznacznie przeanalizować opcjonalny argument.

· Użyj *, aby oznaczać, że ta opcja nie powinna być wymieniona w użyciu wygenerowanym dla
-h argument. Jest to pokazane dla --help-all zgodnie z dokumentacją w gitcli(7).

· Posługiwać się ! aby nie udostępniać odpowiedniej zanegowanej opcji długiej.


, jeśli jest określony, jest używany jako nazwa argumentu w wyjściu pomocy, for
opcje, które przyjmują argumenty. kończy się pierwszą spacją. To jest
zwyczajowo używa się myślnika do oddzielania słów w wielowyrazowej wskazówce argumentu.

Pozostała część linii, po usunięciu spacji, służy jako pomoc związana z:
opcja.

Puste linie są ignorowane, a linie, które nie pasują do tej specyfikacji, są używane jako opcja
grupuj nagłówki (zacznij wiersz od spacji, aby celowo utworzyć takie wiersze).

Przykład
OPTS_SPEC = "\
jakieś polecenie [opcje] ...

jakieś polecenie robi foo i bar!
--
h, pomóż pokazać pomoc

fao jakaś fajna opcja --foo
bar= jakaś fajna opcja --bar z argumentem
baz=arg kolejna fajna opcja --baz z nazwanym argumentem
qux?path qux może przyjmować argument ścieżki, ale ma samo w sobie znaczenie

Grupa opcji Nagłówek
C? opcja C z opcjonalnym argumentem"

eval "$(echo "$OPTS_SPEC" | git rev-parse --parseopt -- "$@" || echo exit $?)"

Stosowanie XNUMX
Gdy "$@" to -h lub --help w powyższym przykładzie, zostanie wyświetlony następujący tekst użycia:

sposób użycia: jakieś polecenie [opcje] ...

jakieś polecenie robi foo i bar!

-h, --pomoc pokaż pomoc
--foo jakaś fajna opcja --foo
--bar ... jakaś fajna opcja --bar z argumentem
--baz kolejna fajna opcja --baz z nazwanym argumentem
--qux[= ] qux może przyjąć argument ścieżki, ale ma samo w sobie znaczenie

Grupa opcji Nagłówek
-C[...] opcja C z opcjonalnym argumentem

SQ-WYCENA


W trybie --sq-quote, odrzutowiec przeanalizować echo na standardowym wyjściu pojedyncza linia odpowiednia dla
sh(1) ocena. Ten wiersz jest tworzony przez normalizację argumentów następujących po --sq-quote. Nic
inne niż cytowanie argumentów jest zrobione.

Jeśli chcesz, aby wprowadzanie poleceń było nadal interpretowane jak zwykle przez odrzutowiec przeanalizować przed
wyjście jest cytowane przez powłokę, zobacz opcję --sq.

Przykład
$ cat >skrypt-git.sh <<\EOF
#!/ Bin / sh
args=$(git rev-parse --sq-quote "$@") # cytuj argumenty dostarczone przez użytkownika
command="git frotz -n24 $args" # i użyj go w ręcznie robionym
# wiersz poleceń
eval "$komenda"
EOF

$ sh twój-git-script.sh "a b'c"

PRZYKŁADY


· Wydrukuj nazwę obiektu bieżącego zatwierdzenia:

$ git rev-parse --weryfikuj HEAD

· Wydrukuj nazwę obiektu zatwierdzenia z wersji w zmiennej powłoki $REV:

$ git rev-parse --verify $ REV^{commit}

Spowoduje to błąd, jeśli $REV jest puste lub nie jest prawidłową wersją.

· Podobnie jak powyżej:

$ git rev-parse --default master --verify $ REV

ale jeśli $REV jest puste, zostanie wydrukowana nazwa obiektu zatwierdzenia z mastera.

GIT


Część odrzutowiec(1) apartament

Użyj git-rev-parse online za pomocą usług onworks.net


Darmowe serwery i stacje robocze

Pobierz aplikacje Windows i Linux

  • 1
    Alt+F
    Alt+F
    Alt-F zapewnia bezpłatne i otwarte oprogramowanie
    alternatywne oprogramowanie dla DLINK
    DNS-320/320L/321/323/325/327L and
    DNR-322L. Alt-F ma Sambę i NFS;
    obsługuje ext2/3/4...
    Pobierz Alt-F
  • 2
    Usm
    Usm
    Usm to zunifikowany pakiet Slackware
    menedżer, który obsługuje automatyczne
    rozwiązanie zależności. To jednoczy
    różne repozytoria pakietów, w tym
    slackware, slacky, p...
    Pobierz usm
  • 3
    Chart.js
    Chart.js
    Chart.js to biblioteka JavaScript, która
    pozwala projektantom i programistom rysować
    wszelkiego rodzaju wykresy przy użyciu HTML5
    element płótna. Chart js oferuje świetne
    tablica ...
    Pobierz Chart.js
  • 4
    iReport-Designer dla JasperReports
    iReport-Designer dla JasperReports
    UWAGA: Obsługa iReport/Jaspersoft Studio
    Ogłoszenie: Od wersji 5.5.0,
    Jaspersoft Studio będzie oficjalnym
    klient projektowy dla JasperReports. iReport
    Wola...
    Pobierz iReport-Designer dla JasperReports
  • 5
    PostInstallerF
    PostInstallerF
    PostInstallerF zainstaluje wszystkie
    oprogramowanie, które Fedora Linux i inne
    nie obejmuje domyślnie, po
    uruchamianie Fedory po raz pierwszy. Jego
    łatwe dla...
    Pobierz PostInstallerF
  • 6
    strace
    strace
    Projekt strace został przeniesiony do
    https://strace.io. strace is a
    diagnostyczne, debugujące i instruktażowe
    śledzenie przestrzeni użytkownika dla systemu Linux. To jest używane
    monitorować...
    Pobierz strace
  • więcej »

Komendy systemu Linux

Ad