error: non-fast-forward updateerror: non-fast-forward update
O push reescreveria o histórico do branch remoto e é rejeitado.
O que causa este erro
Seu branch local divergiu do branch remoto. O push não é um simples fast-forward (acrescentar novos commits), mas exigiria reescrever o histórico remoto.
Como corrigir
Faça pull e rebase primeiro: git pull --rebase origin branch, depois faça push. Se você reescreveu o histórico intencionalmente (rebase, amend), use git push --force-with-lease (mais seguro que --force). Nunca force push em branches compartilhados sem coordenação da equipe.
Códigos de Erro Relacionados
Already up to date.Already up to date
O branch já possui todas as alterações do branch que você tentou mesclar ou fazer pull.
error: pathspec did not match any fileserror: pathspec did not match any files
O padrão de arquivo especificado não correspondeu a nenhum arquivo rastreado.
fatal: shallow update not allowedfatal: shallow update not allowed
Um push a partir de um clone raso foi rejeitado porque o remoto não permite atualizações rasas.
fatal: Not possible to fast-forward, abortingfatal: Not possible to fast-forward, aborting
Um pull com --ff-only falhou porque os branches divergiram.
nothing to commit, working tree cleannothing to commit, working tree clean
Não há alterações para confirmar; o diretório de trabalho corresponde ao último commit.
No local changes to saveNo local changes to save
O git stash não encontrou arquivos rastreados modificados para salvar.