Close

Git Show


Czym jest polecenie git-show?


Polecenie git-show jest narzędziem wiersza polecenia przeznaczonym do wyświetlania rozszerzonych szczegółów obiektów Git, takich jak obiekty blob, drzewa, tagi i commity. Działanie polecenia git-show jest specyficzne dla każdego typu obiektów.

W przypadku tagów są wyświetlane komunikat tagu oraz inne obiekty uwzględnione w tagu. W przypadku drzew są wyświetlane nazwy oraz zawartość obiektów w drzewie. W przypadku obiektów blob jest wyświetlana ich bezpośrednia zawartość. Z kolei w przypadku commitów są wyświetlane komunikat dziennika commita oraz wersja różnicowa zmian wprowadzonych w commicie.

Wszystkie obiekty Git są dostępne za pomocą referencji. Domyślnie polecenie git-show działa w oparciu o referencję HEAD. Referencja HEAD zawsze wskazuje na ostatni commit w bieżącej gałęzi. W związku z tym za pomocą polecenia git-show można wyświetlić komunikat dziennika oraz wersję różnicową najnowszego commita.

Opcje polecenia git-show


<object>…
Przekazanie odniesienia do obiektu lub listy obiektów pozwala przeanalizować te konkretne obiekty. Jeśli nie zostaną przekazane żadne konkretne obiekty, polecenie git-show domyślnie będzie odnosić się do wskaźnika HEAD.

--pretty[=<format>]
Opcja pretty przyjmuje jedną z wartości dodatkowych formatu: oneline, short, medium, full, fuller, email, raw i format:<string>. Jeśli zostanie pominięta, domyślnie będzie stosowana opcja medium. Każda opcja formatu jest odmiennym szablonem decydującym o sposobie formatowania wyniku polecenia show w Git. Opcja <code>oneline</code> może być bardzo przydatna podczas wyświetlania listy commitów.

--abbrev-commit
Ta opcja skraca długość wyjściowych identyfikatorów commitów. Identyfikatory commitów składają się z 40 znaków i czasami trudno je wyświetlić na wąskich ekranach terminali. Ta opcja w połączeniu z --pretty=oneline pozwala uzyskać bardzo zwięzły wynik polecenia git log.

--no-abbrev-commit
Zawsze pokazuje pełny identyfikator commita złożony z 40 znaków. Powoduje zignorowanie opcji --abbrev-commit oraz wszelkich innych opcji mających na celu skrócenie identyfikatorów commitów, takich jak --oneline format.

Bazy danych
materiały pokrewne

Jak przenieść pełne repozytorium Git

Logo Bitbucket
POZNAJ ROZWIĄZANIE

Poznaj środowisko Git z rozwiązaniem Bitbucket Cloud

--oneline
To skrót do korzystania z rozszerzonego polecenia --pretty=oneline --abbrev-commit.

--encoding[=<encoding>]
Domyślne kodowanie znaków w komunikatach dziennika w Git to UTF-8. Za pomocą tej opcji można zmienić sposób kodowania znaków na inny. Jest to przydatne w przypadku korzystania z Git w środowisku, w którym obowiązuje inne kodowanie znaków, na przykład z terminala w języku azjatyckim.

>--expand-tabs=<n>
--expand-tabs
--no-expand-tabs

Te opcje zastępują znaki tabulacji w wyniku komunikatu dziennika spacjami. Za pomocą wartości n można skonfigurować liczbę spacji wstawianych zamiast znaku tabulacji. Jeśli wartość n nie zostanie jawnie zdefiniowana, znaki tabulacji będą zastępowane 8 spacjami. --no-expand-tabs jest odpowiednikiem n=0.

--notes=<ref>
--no-notes

Git ma wbudowany system notatek, który umożliwia dołączanie dowolnych metadanych typu „notatka” do obiektów. Te dane można ukryć lub filtrować podczas korzystania z polecenia git-show.

--show-signature
Ta opcja zweryfikuje, czy commit został podpisany podpisem szyfrowanym przez przekazanie go do podpolecenia gpg.

Formaty pretty w poleceniu git-show


Opcja --pretty omówiona powyżej przyjmuje jedną z kilku dodatkowych opcji określających format danych wyjściowych uzyskiwanych za pomocą polecenia git-show. Poniżej wymieniono te opcje dodatkowe wraz z przykładowym szablonem:

  • oneline
    <sha1> <wiersz tytułu>

W formacie oneline system podejmuje próbę skompresowania jak największej ilości informacji w jednym wierszu.

  • short
    commit <sha1>
    Author: <autor>
    <wiersz tytułu>
  • medium
    commit <sha1>
    Author: <autor>
    Date: <data autora>
    <wiersz tytułu>
    <pełny komunikat commita>
  • full
    commit <sha1>
    Author: <autor>
    Commit: <twórca commita>
    <wiersz tytułu>
    <pełny komunikat commita>
  • fuller
    commit <sha1>
    Author: <autor>
    AuthorDate: <author date>
    Commit: <twórca commita>
    CommitDate: <data twórcy commita>
    <wiersz tytułu>
    <pełny komunikat commita>
  • e-mail
    From <sha1> <data>
    From: <autor>
    Date: <data autora>
    Subject: [PATCH] <wiersz tytułu>
    <pełny komunikat commita>
  • raw
    Format raw ignoruje inne opcje formatowania przekazane do polecenia git-show i wyświetla commit w dokładnie takiej postaci, w jakiej został zapisany w obiekcie. Format raw będzie ignorował opcje --abrev i --no-abbrev oraz zawsze będzie wyświetlał commity nadrzędne.
  • format:
    Opcja format umożliwia określenie niestandardowego formatu danych wyjściowych. Działa ona podobnie, jak polecenie printf w języku C. Opcja --pretty=format przyjmuje dodatkową wartość ciągu szablonu. Szablon ma dostęp do zmiennych symboli zastępczych, które zostaną wypełnione danymi z obiektu commita. Poniżej znajduje się lista tych symboli zastępczych:

    %H: hash commita
    %h: skrócony hash commita
    %T: hash drzewa
    %t: skrócony hash drzewa
    %P: hashe elementów nadrzędnych
    %p: skrócone hashe elementów nadrzędnych
    %an: nazwa autora
    %aN: nazwa autora
    %ae: adres e-mail autora
    %aE: adres e-mail autora
    %ad: data autora (format akceptuje opcję --date=)
    %aD: data autora, styl RFC2822
    %ar: data autora, względna
    %at: data autora, znacznik czasu UNIX
    %ai: data autora, format ISO 8601
    • %cn: nazwa twórcy commita
    %cN: nazwa twórcy commita
    %ce: adres e-mail twórcy commita
    %cE: adres e-mail twórcy commita
    %cd: data twórcy commita
    %cD: data twórcy commita, styl RFC2822
    %cr: data twórcy commita, względna
    %ct: data twórcy commita, znacznik czasu UNIX
    %ci: data twórcy commita, format ISO 8601
    %d: nazwy referencji, jak w przypadku opcji --decorate polecenia git-log(1)
    %e: kodowanie
    %s: temat
    %f: oczyszczony wiersz tematu, odpowiedni dla nazwy pliku
    • %b: treść
    %N: notatki do commita
    %gD: selektor dziennika reflog, np. refs/stash@{1}
    %gd: skrócony selektor dziennika reflog, np. stash@{1}
    %gs: temat dziennika reflog
    %Cred: zmiana koloru na czerwony
    %Cgreen: zmiana koloru na zielony
    %Cblue: zmiana koloru na niebieski
    %Creset: reset koloru
    %C(...): specyfikacja koloru zgodna z opisem w opcji konfiguracji color.branch.*
    %m: znacznik lewy, prawy lub granicy
    %n: nowy wiersz
    %%: znak %
    %x00: drukowanie bajtu z kodu szesnastkowego
    %w([[,[,]]]): przełączenie zawijania wiersza, jak w przypadku opcji -w w poleceniu git-shortlog

Przykłady polecenia git-show


git show --pretty="" --name-only bd61ad98

To polecenie spowoduje wyświetlenie listy wszystkich plików w commicie, na których wykonano jakąś operację.

git show REVISION:path/to/file

To polecenie spowoduje wyświetlenie konkretnej wersji pliku. Fragment REVISION zastąp hashem SHA Git.

git show v2.0.0 6ef002d74cbbc099e1063728cab14ef1fc49c783

To polecenie spowoduje wyświetlenie tagu v2.0.0 oraz commita o identyfikatorze 6ef002d74cbbc099e1063728cab14ef1fc49c783.

git show commitA...commitD

To polecenie spowoduje wyświetlenie wszystkich commitów z zakresu od commitA do commitD.

Podsumowanie


Polecenie git-show jest bardzo wszechstronnym narzędziem do badania obiektów w repozytorium Git. Można go używać do wyszukania konkretnych plików w konkretnych wersjach. Przeanalizowanie zakresu commitów za pomocą polecenia git-show spowoduje wyświetlenie wszystkich pojedynczych commitów mieszczących się w zakresie. Polecenie git-show bywa pomocnym narzędziem do tworzenia uwag do poprawek oraz śledzenia zmian w repozytorium.


Udostępnij ten artykuł
Następny temat

Zalecane lektury

Dodaj te zasoby do zakładek, aby dowiedzieć się więcej na temat rodzajów zespołów DevOps lub otrzymywać aktualności na temat metodyki DevOps w Atlassian.

Ludzie współpracujący przy ścianie pełnej narzędzi

Blog Bitbucket

Ilustracja DevOps

Ścieżka szkoleniowa DevOps

Demonstracje funkcji z ekspertami Atlassian

Zobacz, jak Bitbucket Cloud współpracuje z Atlassian Open DevOps

Zapisz się do newslettera DevOps

Thank you for signing up