Skip to main content

Rendo il web più veloce e più usabile

Come integrare git nel Terminale (shell) di Mac OS

Ora che zsh è la shell predefinita sul terminale di Mac OS, potresti voler configurare il tuo nuovo Mac o il terminale di VS Code per avere un'integrazione intelligente con git, simile a git bash per Windows.

App Terminale Mac OS X | blog-11ty git:(main) * git status | On branch main | Your branch is ahead of 'origin/main' by 1 commit. (use "git push" to publish your local commits) | Changes not staged for commit: | (use "git add ‹file>..." to update what will be committed) | (use "git restore ‹file>..." to discard changes in working directory) | modified: content/blog/how-integrate-git-autocomplete-mac-shell-terminal-bash-zsh/index.md | no changes added to commit (use "git add" and/or "git commit -a")
Terminale Mac OS con integrazione git

Dopo aver cercato in giro per un po' e aver trovato strumenti per l'integrazione con bash, ho finalmente trovato questo articolo che spiega come integrare git con zsh nel Terminale (o shell) di Mac OS.

Poiché zsh viene fornito con un framework per ottenere informazioni dai sistemi di controllo versione, chiamato vcs_info, puoi includere il nome del branch nel prompt sul lato destro aggiungendo queste righe al tuo file ~/.zshrc:

autoload -Uz vcs_info
precmd_vcs_info() { vcs_info }
precmd_functions+=( precmd_vcs_info )
setopt prompt_subst
RPROMPT='${vcs_info_msg_0_}'
# PROMPT='${vcs_info_msg_0_}%# '
zstyle ':vcs_info:git:*' formats '%b'

Zsh è così potente che esistono interi framework dedicati a migliorarlo. Uno di questi si chiama oh-my-zsh. Il sistema di plugin di oh-my-zsh offre un potente autocompletamento (tab-completion) per git e dispone di una varietà di "temi" per il prompt, molti dei quali mostrano i dati del controllo versione.

Puoi installare oh-my-zsh eseguendo il seguente comando:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Goditi il tuo nuovo terminale zsh integrato con i comandi git!