fbpx
devstyle.pl - Blog dla każdego programisty
devstyle.pl - Blog dla każdego programisty
2 minut

Git Pager – zawijanie wierszy w diff,log etc…


28.03.2013

Standardowo komendy wykonywanie w Git Bash “ucinają” długie linie, na przykład:

git diff

clip_image001

Wynika to z tego, że domyślnie tekst jest stronicowany za pomocą “pagera” o nazwie LESS. To dzięki niemu nie jesteśmy zalewani nieograniczoną ilością tekstu, tylko dostajemy możliwość zatrzymania się po jednej stronie i kontynuowania za pomocą spacji.

Dobra wiadomość jest taka, że możemy to kontrolować. Tylko trzeba o tym wiedzieć:). Możemy na przykład całkowicie usunąć stronicowanie dla jakiejś komendy:

git_pager='' git diff

Teraz bash nie zatrzyma się po zapełnieniu strony tylko wszystko zostanie na nas wyrzygane bez przerwy.

Preferuję po prostu dodanie odpowiedniej flagi do domyślnego pagera:

git_pager='less -r' git diff

clip_image002

Teraz nadal po zapełnieniu strony tekst przestanie się lać i będziemy mogli wznowić proces za pomocą spacji, ale przełącznik “-r” włącza “line wrapping”:

Pomocne? Pomocne.

Tak, wiem, że to standardowe operacje bashowe i może nie ma się czym podniecać, ale jak się człowiek czegoś nauczy to i napisać się o tym chce;).

Mały bonus:
Zamiast zwykłego “diff” opalcie “diff –word-diff –color-words”. Zrobi się bardziej przejrzyście:).

0 0 votes
Article Rating
3 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Tomasz Kowalczyk
10 years ago

Można też pisać krótsze linie, ale kto by się przejmował takimi pierdołami. :D

DP
DP
10 years ago

Można też używać strzałek do nawigacji (lewo – prawo).
Ja osobiście nie lubię zawijania wierszy :)

orientman
10 years ago

O dzięki, rozwiązałeś mój problem. Używam poshgit-a i wkurzało złe formatowanie log-a np. mam taki alias:

[alias]
lol = log –graph –pretty=format:’%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)%Creset’

W PS niby ucina linię +/- na szerokość konsoli, ale skleja ją z następną. Teraz już wiem co za to odpowiada (chyba nieśmiertelny problem z CRLF) i przełączyłem się na zawijanie – tak jest o niebo lepiej.

Kurs Gita

Zaawansowany frontend

Szkolenie z Testów

Szkolenie z baz danych

Książka

Zobacz również