{"meta":{"title":"Solução de problemas com commits","intro":"Resolva problemas comuns de confirmação, como links de usuário incorretos, confirmações locais ausentes e blocos de proteção por push.","product":"Solicitações de pull","breadcrumbs":[{"href":"/pt/pull-requests","title":"Solicitações de pull"},{"href":"/pt/pull-requests/how-tos","title":"How-tos"},{"href":"/pt/pull-requests/how-tos/commit-changes","title":"Confirmar alterações"},{"href":"/pt/pull-requests/how-tos/commit-changes/troubleshooting-commits","title":"Solucionar problemas de commits"}],"documentType":"article"},"body":"# Solução de problemas com commits\n\nResolva problemas comuns de confirmação, como links de usuário incorretos, confirmações locais ausentes e blocos de proteção por push.\n\n## As confirmações estão vinculadas ao usuário errado\n\nGitHub vincula uma confirmação a um usuário correspondendo o endereço de email no cabeçalho de confirmação a um endereço de email em uma GitHub conta. Se suas confirmações estiverem vinculadas ao usuário errado ou a nenhum usuário, atualize as configurações de email do Git e adicione o endereço de email à sua conta.\n\n> \\[!NOTE]\n> Se suas confirmações estiverem vinculadas a outro usuário, isso não lhe dará acesso ao repositório.\n\n### Commits estão vinculados a outro usuário\n\n1. Altere o endereço de email na configuração do Git local seguindo [Configurar o endereço de e-mail do commit](/pt/account-and-profile/how-tos/email-preferences/setting-your-commit-email-address#setting-your-commit-email-address-in-git). Se você trabalhar em vários computadores, altere essa configuração em cada um deles.\n2. Adicione o endereço de email à sua conta seguindo [Adicionando um endereço de email à sua conta de GitHub](/pt/account-and-profile/how-tos/email-preferences/adding-an-email-address-to-your-github-account).\n\nConfirmações futuras que usam o endereço de email serão vinculadas à sua conta.\n\n### Os commits não estão vinculados a nenhum usuário\n\nPara descobrir por que uma confirmação não está vinculada, inspecione a confirmação.GitHub\n\n1. Em GitHub, acesse a página principal do repositório.\n2. Na página principal do repositório, acima da lista de arquivos, clique em **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-history\" aria-label=\"history\" role=\"img\"><path d=\"m.427 1.927 1.215 1.215a8.002 8.002 0 1 1-1.6 5.685.75.75 0 1 1 1.493-.154 6.5 6.5 0 1 0 1.18-4.458l1.358 1.358A.25.25 0 0 1 3.896 6H.25A.25.25 0 0 1 0 5.75V2.104a.25.25 0 0 1 .427-.177ZM7.75 4a.75.75 0 0 1 .75.75v2.992l2.028.812a.75.75 0 0 1-.557 1.392l-2.5-1A.751.751 0 0 1 7 8.25v-3.5A.75.75 0 0 1 7.75 4Z\"></path></svg> commits**.\n\n   ![Captura de tela da página principal de um repositório. Um ícone de relógio e \"178 commits\" são realçados com um contorno laranja.](/assets/images/help/commits/commits-page.png)\n3. Para navegar até um commit específico, clique na mensagem de confirmação para esse commit.\n\n   ![Captura de tela de um commit na lista de commits de um repositório. \"Update README.md\" é realçado com um contorno laranja.](/assets/images/help/commits/commit-message-link.png)\n4. Passe o mouse sobre o azul <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-question\" aria-label=\"Question mark\" role=\"img\"><path d=\"M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.92 6.085h.001a.749.749 0 1 1-1.342-.67c.169-.339.436-.701.849-.977C6.845 4.16 7.369 4 8 4a2.756 2.756 0 0 1 1.637.525c.503.377.863.965.863 1.725 0 .448-.115.83-.329 1.15-.205.307-.47.513-.692.662-.109.072-.22.138-.313.195l-.006.004a6.24 6.24 0 0 0-.26.16.952.952 0 0 0-.276.245.75.75 0 0 1-1.248-.832c.184-.264.42-.489.692-.661.103-.067.207-.132.313-.195l.007-.004c.1-.061.182-.11.258-.161a.969.969 0 0 0 .277-.245C8.96 6.514 9 6.427 9 6.25a.612.612 0 0 0-.262-.525A1.27 1.27 0 0 0 8 5.5c-.369 0-.595.09-.74.187a1.01 1.01 0 0 0-.34.398ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\"></path></svg> à direita do nome de usuário.\n5. Use a mensagem para decidir o que atualizar:\n   * **Autor não reconhecido (com endereço de email):** Adicione o endereço de email mostrado à sua GitHub conta.\n   * **Autor não reconhecido (sem endereço de email):** Defina seu endereço de email de confirmação no Git e adicione esse endereço à sua GitHub conta.\n   * **Email inválido:** Defina um endereço de email de confirmação válido no Git e adicione esse endereço à sua GitHub conta.\n\nAs confirmações antigas podem não estar vinculadas depois que você atualiza as configurações de email. Consulte [Configurar o endereço de e-mail do commit](/pt/account-and-profile/how-tos/email-preferences/setting-your-commit-email-address).\n\n## Existe uma confirmação em GitHub mas não no clone local\n\nSe `git show COMMIT-SHA` retornar um erro localmente, mas a confirmação estiver visível GitHub, o clone local poderá estar desatualizado ou a confirmação poderá não ser mais referenciada por um branch.\n\n### O repositório local está desatualizado\n\nBuscar informações do repositório remoto.\n\n```shell\ngit fetch REMOTE\n```\n\nUse `git fetch upstream` para o repositório upstream de uma bifurcação ou `git fetch origin` para o repositório clonado.\n\n### O branch que continha o commit foi excluído\n\nSe o branch foi excluído ou forçado por push, pergunte a um colaborador que ainda tem a confirmação localmente para efetuá-lo por push para um novo branch.\n\n```shell\ngit branch recover-B B\ngit push upstream B:recover-B\n```\n\nEm seguida, busque o branch recuperado.\n\n```shell\ngit fetch upstream recover-B\n```\n\n### Evitar pushes forçados\n\nEvite forçar o push, a menos que seja necessário, especialmente quando mais de uma pessoa pode enviar por push para o repositório. Forçar o envio por push reescreve o histórico do repositório e pode interromper colaboradores ou solicitações de pull corrompidas.\n\n## Uma confirmação é bloqueada pela proteção por push\n\nA proteção por push bloqueia confirmações, uploads ou solicitações de API que contêm segredos com suporte.\n\n### Noções básicas sobre por que a proteção por push bloqueou seu commit\n\nSe a proteção por push bloquear seu trabalho, GitHub detectou um segredo com suporte em sua confirmação ou solicitação. Remova o segredo antes de tentar novamente.\n\n### Resolvendo um bloqueio de proteção de push\n\n1. Examine a mensagem de proteção por push para identificar o segredo e onde ele aparece.\n2. Remova o segredo da confirmação, upload de arquivo ou solicitação de API.\n3. Tente o push, a confirmação, o upload ou a solicitação novamente.\n4. Se você acredita que o segredo é seguro para enviar por push, siga as etapas de bypass para o fluxo de trabalho:\n   * [Trabalhando com proteção contra push a partir da linha de comando](/pt/code-security/how-tos/secure-your-secrets/work-with-leak-prevention/push-protection-on-the-command-line)\n   * [Trabalhar com proteção por push na interface do usuário do GitHub](/pt/code-security/how-tos/secure-your-secrets/work-with-leak-prevention/push-protection-in-the-github-ui)\n   * [Trabalhando com a proteção contra push via API REST](/pt/code-security/concepts/secret-security/push-protection-from-the-rest-api)\n\n## Leitura adicional\n\n* [Pesquisar commits](/pt/search-github/searching-on-github/searching-commits)\n* [Proteção por Notificações Push](/pt/code-security/concepts/secret-security/push-protection)\n* [Padrões de varredura de segredos com suporte](/pt/code-security/reference/secret-security/supported-secret-scanning-patterns)"}