Comment réclamer des contributions sur GitHub

16

Un projet sur lequel je travaillais est récemment passé de l'utilisation de Subversion auto-hébergée à git hébergé par GitHub pour sa solution de contrôle de source. Mon nom apparaît dans les commits, mais je ne vois aucun moyen de les revendiquer comme étant "les miens" de mon compte github.

Je sais qu'il doit y avoir un moyen de le faire, car les autres contributeurs ont leurs contributions liées à un compte github, avant même que l'utilisation de github ne soit effectuée.

Quelqu'un peut-il me dire comment je peux revendiquer ces changements comme étant les miens?

TZHX
la source
Vous devrez peut-être ajouter un .mailmapfichier. Je ne sais pas si GitHub les respecte cependant.
asmeurer
Ah, on dirait que non.
asmeurer

Réponses:

12

La correspondance du compte utilisateur GitHub pour les validations se fait via l'adresse e-mail associée à la validation git d'un côté (c'est-à-dire votre user.emailparamètre) et celles associées au compte GitHub de l'autre (voir «À propos des adresses e-mail de validation» et «Pourquoi mes validations sont-elles liées au mauvais utilisateur? » dans la documentation utilisateur de GitHub). Pour associer vos validations à votre compte, il vous suffit d' ajouter leurs adresses e-mail associées à votre compte GitHub .

kopischke
la source
2
Github les appliquera-t-il rétroactivement au graphique des contributions? Ne semble pas le faire.
Matt M.
1
@MattM. Je ne suis pas sûre de ça. Si ce n'est pas le cas, cela me semblerait être un bug dans la gestion du graphique par GitHub. Peut-être leur faire rapport?
kopischke
Par souci d'exhaustivité, ces paramètres de messagerie incorrects sont probablement causés par un changement de courrier électronique antérieur. En effet, qui connaîtrait ces meilleures pratiques pour quitter votre entreprise AVANT TOUT? Github aurait dû me faire savoir une telle conséquence lorsque je supprimais mon ancien e-mail via leur page de configuration de profil.
RayLuo
0

En plus de la réponse de Kopischke :

Étant donné que la correspondance est effectuée par adresse e-mail - si l'e-mail dans le commit correspond à votre e-mail, il le fera automatiquement.

Idéalement, ces remplacements et corrections d'e-mails auraient dû être effectués lors de la conversion de SVN en Git. Si vous utilisez des outils pour le convertir, il existe également des options pour mapper chaque e-mail / utilisateur à un autre e-mail qui sera écrit dans les validations Git correspondantes.

  • Je l'ai fait pour mon organisation lors du transfert de projets de SVN à Git, et cela a très bien fonctionné. Bien que je doive mapper beaucoup d'adresses manuellement, car les scripts que j'ai créés pour l'automatiser ne pouvaient pas détecter tous les cas, mais tout fonctionnait et chaque e-mail dans n'importe quel commit était associé à un utilisateur de l'organisation.

Après que le projet a été téléchargé sur GitHub (ou tout autre service d'hébergement Git) ou partagé avec d'autres personnes - c'est beaucoup plus problématique:
il est possible de modifier tous les commits rétroactivement localement et de fournir les informations que vous souhaitez (c'est-à-dire le nouvel e-mail) , mais vous devrez forcer le repo et tout le monde devra le forcer à le tirer.
Il est plausible si le projet a une petite quantité de membres / contributeurs et pas de fourchettes, et alors vous pouvez contacter chacun d'eux et organiser ce changement.

Je ne pense vraiment pas que GitHub offre un outil comme ça, mais, peut-être que si vous ajoutez l'e-mail dans le commit comme un autre e-mail à votre compte GitHub - il le reconnaîtra - vaut la peine d'essayer si possible.

arieljannai
la source