Como reivindicar contribuições no GitHub

16

Um projeto em que eu trabalhei recentemente mudou do uso do Subversion auto-hospedado para o git hospedado no GitHub em sua solução de controle de origem. Meu nome aparece nos commits, mas não vejo como reivindicá-los como sendo "meus" da minha conta do github.

Eu sei que deve haver alguma maneira de fazer isso, pois outros colaboradores têm suas contribuições vinculadas a uma conta do github, mesmo antes da mudança para o uso do github.

Alguém pode me dizer como posso reivindicar essas alterações como sendo minhas?

TZHX
fonte
Talvez você precise adicionar um .mailmaparquivo. Não tenho certeza se o GitHub os respeita.
asmeurer
Ah, parece que não.
asmeurer

Respostas:

12

A correspondência de conta de usuário do GitHub para confirmações é feita pelo endereço de email associado ao commit do git de um lado (ou seja, sua user.emailconfiguração) e aqueles associados à conta do GitHub do outro (consulte “Sobre endereços de email de confirmação” e “Por que meus commits estão vinculados? para o usuário errado? ” na documentação do usuário do GitHub). Para corresponder seus commits à sua conta, basta adicionar os endereços de e-mail associados à sua conta do GitHub .

kopischke
fonte
2
O github aplicará essas informações ao gráfico de contribuições retroativamente? Parece que não.
Matt M.
1
@MattM. Não tenho certeza sobre isso. Caso contrário, isso pareceria um bug na manipulação do gráfico pelo GitHub para mim. Relatar a eles talvez?
Kopischke
Por uma questão de integridade, essas configurações de email incorretas provavelmente são causadas por uma alteração anterior do email. De fato, quem conheceria essas práticas recomendadas para deixar sua empresa ANTES? O Github deveria ter me informado essas consequências quando eu excluí meu e-mail antigo por meio da página de configuração de perfil.
RayLuo 16/01/19
0

Além da resposta de kopischke :

Como a correspondência é feita por endereço de email - se o email no commit corresponder ao seu email, ele será automaticamente.

Idealmente, essas substituições e correções por email deveriam ter sido feitas durante a conversão do SVN para o Git. Se estiver usando ferramentas para convertê-lo, também existem opções para mapear cada email / usuário para outro email que será gravado nos confirmados Git correspondentes.

  • Fiz isso para minha organização ao mover projetos do SVN para o Git, e funcionou muito bem. Embora eu tivesse que mapear muitos endereços manualmente, pois os scripts que eu criei para automatizá-lo não conseguiam capturar todos os casos, mas tudo funcionava e cada email em qualquer confirmação era associado a um usuário na organização.

Depois que o projeto foi carregado no GitHub (ou qualquer outro serviço de hospedagem Git) ou compartilhado com outras pessoas de qualquer forma - é muito mais problemático:
é possível editar todos os commits retroativamente localmente e fornecer as informações que você deseja (por exemplo, o novo email) , mas você precisará forçar o push do repositório e todos terão que forçá-lo.
É plausível que o projeto tenha uma pequena quantidade de membros / colaboradores e nenhum garfo, e você pode alcançar cada um deles e organizar essa alteração.

Eu realmente não acho que o GitHub ofereça uma ferramenta como essa, mas talvez se você adicionar o email no commit como outro email à sua conta do GitHub - ele reconhecerá - vale a pena tentar, se possível.

arieljannai
fonte