Eu faço a maior parte do meu trabalho git em um terminal, mas frequentemente me vejo usando GUIs git para alguns casos de uso como: index, commit, diff, stash, culpa e log.
Infelizmente, todas as GUIs git populares falham em repositórios gigantes ou deixam de responder e ficam inutilizáveis.
GitUI fornece a experiência do usuário e o conforto de uma GUI git, mas diretamente no seu terminal, ao mesmo tempo que é portátil, rápido, gratuito e de código aberto.
Para uma apresentação (slides) do encontro RustBerlin, comparei lazygit
, tig
e gitui
analisando todo o repositório git do Linux (que contém mais de 900 mil commits):
Tempo | Memória (GB) | Binário (MB) | Congela | Falhas | |
---|---|---|---|---|---|
gitui | 24s ✅ | 0,17 ✅ | 10 | Não ✅ | Não ✅ |
lazygit | 57 segundos | 2.6 | 25 | Sim | Às vezes |
tig | 4m 20s | 1.3 | 0,6 ✅ | Às vezes | Não ✅ |
Estas são as metas de alto nível antes de anunciar 1.0
:
Atualmente, esta ferramenta não substitui totalmente o git shell , porém ambas as ferramentas funcionam bem em conjunto.
As prioridades do gitui
estão nos recursos que me deixam louco quando feitos no git shell , como stashing, staging lines ou hunks. Eventualmente, poderei trabalhar para tornar gitui
uma solução completa - mas para isso preciso de ajuda - este é apenas um projeto de tempo livre por enquanto.
Todo apoio é bem-vindo! Patrocinadores também! ❤️
GitUI está em versão beta e pode conter bugs e recursos ausentes. No entanto, para uso pessoal é razoavelmente estável e está sendo usado enquanto se desenvolve.
pacman -S gitui
sudo dnf install gitui
Disponível em sobreposição dm9pZCAq
sudo eselect repository enable dm9pZCAq
sudo emerge --sync dm9pZCAq
sudo emerge dev-vcs/gitui::dm9pZCAq
sudo zypper install gitui
brew install gitui
port install gitui
winget install gitui
scoop install gitui
choco install gitui
Nixpkg
nix-env -iA nixpkgs.gitui
NixOS
nix-env -iA nixos.gitui
pkg install gitui
conda install -c conda-forge gitui
Disponível para download em lançamentos
Binários disponíveis para:
Todos contêm um único arquivo binário
veja NOITES.md
Versão mínima rust
/ cargo
suportada: 1.70
Para construir a dependência do openssl (consulte https://docs.rs/openssl/latest/openssl/)
Para executar o conjunto de testes completo, python é necessário (e deve ser invocável como python
)
A maneira mais simples de começar a brincar com gitui
é fazer com que cargo
construa e instale-o com cargo install gitui --locked
. Se você não está familiarizado com ferrugem e carga: Primeiros passos com ferrugem
ativar o rastreamento libgit2
funciona se libgit2
for construído com -DENABLE_TRACE=ON
este recurso habilitado por padrão, para desabilitar: cargo install --no-default-features
veja a página de perguntas frequentes
Para executar com o log ativado, execute gitui -l
.
Isso registrará em:
$HOME/Library/Caches/gitui/gitui.log
XDG
: $XDG_CACHE_HOME/gitui/gitui.log
$HOME/.cache/gitui/gitui.log
%LOCALAPPDATA%/gitui/gitui.log
gitui
deve funcionar automaticamente em temas de terminal claros e escuros.
Porém, você pode personalizar tudo ao seu gosto: Veja Temas.
As combinações de teclas podem ser personalizadas: Consulte Key Config para saber como configurá-las para ligações do tipo vim
.
Consulte CONTRIBUTING.md.
Obrigado a todos os contribuidores que ajudam a tornar o GitUI incrível! ❤️
Quer se tornar um co-mantenedor? Estamos procurando por você!