Tirer dans les changements d'un repo forké sans une demande sur GitHub?

40

Je suis nouveau dans la communauté du codage social et je ne sais pas comment procéder correctement dans cette situation:

J'ai créé un référentiel GitHub il y a quelques semaines. Quelqu'un a lancé le projet et a apporté quelques changements mineurs à ma tâche. Je suis ravi que quelqu'un ait présenté mon projet et a pris le temps de l'ajouter. J'aimerais intégrer les modifications dans mon propre code, mais j'ai quelques préoccupations.

1) Je ne sais pas comment intégrer les modifications via git à partir d'un repo forké. D'après ce que je comprends, il existe un moyen simple de fusionner les modifications via une demande d'extraction, mais il semble que le forker doit émettre cette demande?

2) Est-il acceptable d'extraire des modifications sans demande d'extraction? Cela concerne le premier. Je mettais le code de côté pendant quelques semaines et revenais pour constater que ce sur quoi j'allais travailler ensuite était fait par quelqu'un d'autre, et je ne voulais pas simplement copier leur code sans leur en créditer le mérite. Ne devrait-il pas y avoir un moyen de tirer les changements même s'ils ne vous le demandent pas explicitement? Quelle est l'étiquette ici

Je réfléchis peut-être à cela, mais merci d’avance pour votre contribution. Je suis assez nouveau dans la communauté des hackers, mais je veux faire tout ce que je peux pour contribuer!

Alec
la source
Voici une excellente ressource pour travailler avec des télécommandes (et tout ce qui a trait à Git): http://git-scm.com/book/fr/Git-Basics-Working-with-Remotes
Nick C.

Réponses:

55

1) Pour intégrer les modifications de quelqu'un d'autre, ajoutez d' abord une télécommande qui pointe vers son référentiel. Par exemple:

git remote add soniakeys https://github.com/soniakeys/goptimize.git

Ensuite, vous pouvez récupérer ces modifications dans votre référentiel (cela ne change pas encore votre code):

git fetch soniakeys

Enfin, pour fusionner ces modifications, assurez-vous que vous êtes sur votre masterbranche et:

git merge soniakeys/master

2) Pour être poli, vous demanderez normalement à l'auteur s'il est correct de retirer les modifications. Le simple fait d’être sur un référentiel public ne signifie pas nécessairement qu’ils sont prêts à tirer. Il pourrait y avoir encore du travail à faire, ou peut-être des problèmes de propriété intellectuelle, ou autre. Cependant, avec les modifications publiées sur un référentiel open source, il n'est pas strictement nécessaire de demander.

Greg Hewgill
la source