Git este un instrument foarte puternic și uneori poate fi puțin înfricoșător. Nu contează cât timp l-ați folosit, vă veți găsi căutând „cum să faceți X”.

Astăzi vreau să vorbesc despre pseudonime. Aliasurile sunt comenzi scurte, personalizate, care se traduc în alte comenzi. În afară de salvarea apăsărilor de taste, pseudonimele vă ajută să evitați memorarea opțiunilor de comandă sau să introduceți istoricul shell-ului pentru a găsi comanda de care aveți nevoie.

Există 2 tipuri de pseudonime: Alias-uri Git și aliasuri de shell, controlate de bash, zsh etc. Să începem cu alias-urile Git.

Cum se creează aliasuri Git

Aliasurile Git pot fi stocate global sau în depozite individuale. Cu excepția cazului în care aveți un motiv foarte specific pentru a păstra un alias cu scopul unui proiect, aș recomanda editarea fișierului global de configurare, care se află la ~/.gitconfig.

Aliasurile sunt live în secțiune [alias]. Acestea sunt disponibile în terminalul dvs. ca opțiuni Git în același mod add, commit și alte opțiuni funcționează. Să vedem cum să adăugăm un alias, pas cu pas:

Mai întâi, deschideți fișierul de configurare Git. În cazul meu, voi folosi codul VS:

code ~/.gitconfig

În continuare, să adăugăm primul nostru alias Git:

[alias]
	graph = log --oneline --graph --decorate

După salvarea fișierului, mergeți la un proiect Git existent și executați git graph. Rezultatul este similar cu imaginea de mai jos:

git graph exemplu în depozitul CSS Tailwind

În loc să tastați git log --oneline --graph --decorate și amintindu-vă de toate cele trei steaguri, acum puteți folosi git graph și obțineți același rezultat.

Aliasurile mele preferate de Git

Iată câteva aliasuri pe care le-am folosit mult în ultima vreme:

[alias]
	graph = log --oneline --graph --decorate
	ls = log --pretty=format:"%C(yellow)%h%Cred%d\ %Creset%s%Cblue\ [%cn]" --decorate
	ll = log --pretty=format:"%C(yellow)%h%Cred%d\ %Creset%s%Cblue\ [%cn]" --decorate --numstat
	lds = log --pretty=format:"%C(yellow)%h\ %ad%Cred%d\ %Creset%s%Cblue\ [%cn]" --decorate --date=short
	conflicts = diff --name-only --diff-filter=U
	local-branches = !git branch -vv | cut -c 3- | awk '$3 !~/\[/ { print $1 }'
	recent-branches = !git branch --sort=-committerdate | head
	authors = !git log --format="%aN <%aE>" | grep -v 'users.noreply.github.com' | sort -u --ignore-case

graph, ls, ll și lds sunt utile pentru vizualizarea istoriei. eu folosesc git ll mult, deoarece îmi dă commit-ul, fișierele modificate și câte linii au fost modificate, așa cum se arată mai jos:

git ll exemplu în depozitul CSS Tailwind

conflicts returnează o listă de conflicte pe care le puteți copia și lipi în editorul dvs.

local-branches returnează o listă de sucursale disponibile local și nu în origine (GitHub de exemplu). Acest lucru poate fi util dacă, de exemplu, trebuie să verificați din nou dacă echipa dvs. are acces la sucursalele dvs.

recent-branches este probabil cel pe care îl folosesc cel mai mult în această listă. Dacă lucrați în diferite funcții în același timp și săriți de la ramură la ramură, acesta este un lucru obligatoriu.

authors este la îndemână pentru lucrări open-source. Poți fugi git authors > AUTHORS.txt și vedeți o listă a persoanelor care au lucrat în depozit.

Aliasuri Shell cu pluginul Oh My Zsh Git

Lista de mai sus este destul de mică, ați putea crede. Și este într-adevăr. Acest lucru se datorează faptului că folosesc și aliasurile create de Oh My Zsh Git plugin.

Oh My Zsh este un cadru pentru gestionarea configurației dvs. zsh. Cu acest instrument, puteți personaliza promptul shell, puteți utiliza diferite teme și puteți adăuga pluginuri care oferă aliasuri pentru a vă crește productivitatea.

Aliasurile Shell sunt create într-un mod ușor diferit. Locuiesc în fișierele de configurare shell (de obicei ~/.bashrc sau ~/.zshrc, dacă utilizați Bash și respectiv Zsh).

Iată un exemplu creat de plugin:

alias gst="git status"

Dacă nu utilizați Oh My Zsh, puteți copia în continuare linia de mai sus și o puteți lipi la sfârșitul ~/.bashrc sau ~/.zshrc fișiere – aliasul shell va funcționa bine.

În loc să configurați un alias Git st pentru status, Folosesc aliasul shell gst ceea ce îmi dă același rezultat.

Prefer aliasurile shell decât alias-urile Git din 2 motive:

  1. Aliasurile Shell nu trebuie să fie prefixate de comandă git.
  2. Nu trebuie să mențin o listă de aliasuri, deoarece pot învăța doar cele menținute de comunitatea Oh My Zsh.

Protip: Dacă utilizați shell-ul implicit fără nicio personalizare, vă recomand să verificați Oh, Zsh proiect și Wes BosUtilizator de linie de comandă.

Concluzie

Aliasurile sunt comenzi rapide pe care le puteți crea sau utiliza pentru a vă crește productivitatea. Astăzi am arătat două moduri de a le folosi în Git.

Sper că această postare vă inspiră să vă imaginați din nou modul în care utilizați terminalul. Dar despre a începe să vă creați propriile aliasuri?

Puteți citi mai multe articole de acest gen pe blogul meu. Dacă îți place acest conținut, poți să mă urmărești Stare de nervozitate și GitHub.

Fotografia de copertă de Yancy Min / Unsplash