iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Trocar o Git por Jujutsu (jj) não é uma conversão automática para ninguém. O que muda de forma concreta é o modelo mental: a cópia de trabalho vira commit sozinha, o índice (staging) deixa de existir como etapa obrigatória e branches deixam de ser pré-requisito para trabalhar. Para quem passou anos com o ciclo de editar, preparar com git add e só então commitar, é nesses pontos que o atrito some ou se transforma em outro tipo de trabalho. Também é nesses pontos que a troca tem custos, principalmente quando o repositório depende de recursos que o jj não cobre.
Este texto separa o que a documentação oficial do projeto afirma, o que é uma consequência prática desse modelo e o que é apenas avaliação pessoal de quem usa Git há muito tempo. A documentação citada foi consultada em outubro de 2026; as listas de compatibilidade mudam entre versões.
O que muda no fluxo de trabalho
A cópia de trabalho é registrada automaticamente
A comparação oficial com o Git do projeto Jujutsu afirma, em inglês: “The working copy is automatically committed.” Na prática, o arquivo que você está editando já pertence a um commit. Não há um momento em que a mudança existe só no disco, nem uma etapa em que ela precisa ser promovida para o histórico. O commit atual é atualizado conforme você edita.
The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Isso elimina uma sequência inteira de comandos do Git, mas cria um hábito novo: a descrição do commit (a mensagem) passa a ser algo que você escreve quando quiser, não algo que fecha uma etapa. Quem vem do Git costuma sentir falta do ponto de parada claro e, ao mesmo tempo, percebe que esse ponto raramente fazia falta de verdade.
#1 Best Overall
- THIS JUJUTSU KAISEN BOOKMARK has a slim design making it easy to use with all types of books, journals, planners and more
- INCLUDES A COORDINATING TASSEL to help you easily keep your place
- BOOKMARKS ARE PERFECT for keeping your page and showing your enthusiasm for reading
- FEATURES FUN DESIGNS that are sure to keep you motivated and your imagination flowing
- BOOKMARK DIMENSIONS are 8.75'' x 2.75''
Não há staging index equivalente
Como a cópia de trabalho já é tratada como commit, o jj não reproduz o índice do Git. Operações que no Git dependem de git add -p para escolher pedaços de um arquivo, no jj são feitas sobre commits existentes: você divide uma mudança em duas ou move trechos de uma mudança para outra. A documentação oficial apresenta isso como uma necessidade relacionada, não como um substituto idêntico.
A diferença é de quando você decide. No Git, a seleção acontece antes do commit. No jj, ela pode acontecer depois, o que muda a forma de corrigir erros pequenos no meio de uma tarefa.
Branches são opcionais
No Git, quase todo trabalho começa com um nome de branch. No jj, a comparação oficial destaca a possibilidade de trabalhar com commits anônimos, sem nome obrigatório. Os nomes existem quando você precisa deles, por exemplo para publicar. No vocabulário do jj esses ponteiros se chamam bookmarks.
Recommended Free Tools
Isso reduz a cerimônia de criar e trocar branches a cada tarefa. Ao mesmo tempo, exige disciplina ao publicar, porque um commit sem bookmark não aparece no remoto até receber um nome.
Conflitos são objetos do modelo
A documentação descreve que o jj representa e resolve conflitos de forma diferente do Git. Não é correto dizer que conflitos deixam de existir ou que ficam sempre fáceis. O que muda é que o conflito pode ser registrado no próprio commit e resolvido depois, sem interromper o trabalho que estava em andamento. Para quem está acostumado a parar tudo para resolver um rebase, essa diferença costuma ser a mais perceptível no dia a dia, mas o resultado final ainda depende do conteúdo do conflito.
Comparação prática com o Git
A tabela abaixo mostra equivalências aproximadas para tarefas comuns. Os comandos do jj são ilustrativos; a sintaxe exata pode variar entre versões, então confira a ajuda do seu binário com jj help.
Rank #4
- Officially licensed Jujutsu Kaisen memo pad by Great Eastern Entertainment.
- Cute, collectible, and limited availability, making the perfect gift for any anime fan!
- Extremely durable. Strong adhesive that sticks well for years to come!
- This memo pad consists of 100 pages!
- Packaging comes with official licensing information.
| Tarefa | Em Git | Em jj |
|---|---|---|
| Registrar a mudança atual | git add seguido de git commit -m |
Não há etapa de salvamento; use jj describe -m para dar a mensagem ao commit atual |
| Começar uma nova tarefa | git switch -c com um nome de branch |
jj new cria um commit vazio sobre o atual, sem nome obrigatório |
| Separar mudanças misturadas | git add -p e commits sucessivos |
jj split divide um commit existente em dois |
| Passar trechos para um commit anterior | Commit de correção e rebase interativo | jj squash, com seleção interativa quando necessário |
| Desfazer um erro recente | git reflog e reset manual |
jj undo; o histórico de operações aparece em jj op log |
Como testar jj num repositório Git existente
A compatibilidade é o que torna a experiência viável para quem não controla a ferramenta da equipe inteira. A documentação do projeto descreve repositórios colocalizados, nos quais o diretório mantém o .git e o jj trabalha sobre ele, com importação e exportação de referências.
- Instale o jj seguindo as instruções do repositório oficial do projeto.
- Entre no repositório Git já existente e execute
jj git init --colocate. O comando cria a estrutura do jj sem clonar outra vez. - Confira o estado com
jj statuse o histórico comjj log. Você deve ver os commits existentes do Git aparecerem no log do jj. - Para um repositório novo, use
jj git clone --colocate <url>em vez de clonar com Git. - Antes de publicar, dê um nome ao commit com
jj bookmark set <nome> -r @-(o commit anterior à change de trabalho) e envie comjj git push.
O ponto de atenção é a convivência. O projeto indica que, em workspaces colocalizados, misturar comandos que alteram o histórico nas duas ferramentas pode gerar referências divergentes e change IDs confusos. A orientação mais simples é usar o Git principalmente para leitura e o jj para alterações.
Best Value
Limites da compatibilidade
Compatibilidade não significa paridade. A página de compatibilidade com Git do projeto lista limitações, e as que mais afetam equipes são estas:
- Git LFS: a documentação indica falta de suporte. Se o repositório depende de arquivos grandes versionados com LFS, o jj não substitui o Git nesse fluxo.
- Submodules: também sem suporte listado. Projetos que organizam dependências como submodules precisam continuar com Git para essa parte.
- Ferramentas e automações: integrações de CI, hooks, editores e scripts que chamam o Git diretamente podem não enxergar as mudanças feitas pelo jj da mesma forma. Verifique cada uma antes de adotar.
- Comandos mutáveis misturados: em repositórios colocalizados, alternar alterações entre as duas ferramentas é a principal fonte de confusão.
Quem deve tentar e quem deve esperar
Vale testar se o seu maior atrito com Git está em organizar mudanças, em conviver com branches temporários ou em recuperar de rebases difíceis. Nesses casos, o modelo do jj ataca o problema diretamente.
Vale esperar se o repositório depende de Git LFS ou submodules, se a equipe usa automações acopladas ao Git, ou se você precisa de paridade total com comandos específicos que você usa todos os dias. Nessas situações, uma migração parcial, em que o jj fica restrito ao seu trabalho local e o Git continua sendo a fonte oficial, reduz o risco.
A troca não é uma prova de que o Git seja ruim. Ela mostra que um modelo mais simples para o histórico local é possível, e que o custo dessa simplicidade aparece nos recursos que o jj ainda não cobre e na adaptação das ferramentas ao redor.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

