40 votes

Comment appliquer un patch git lorsqu'on lui donne un pull number

J'ai téléchargé une version de tronc d'une base de code à partir de git, et il y a des erreurs de construction. Apparemment un patch est maintenant disponible, et j'ai reçu un mail :

voir https://github.com/JustinTulloss/zeromq.node/pull/47 pour le correctif

Je suis nouveau sur git donc je ne sais pas trop quoi faire avec ce 'patch' surtout, puisque la page ressemble plus à un fil de discussion.

Est-ce que quelqu'un sait comment obtenir/appliquer ce correctif à mon dépôt git cloné localement ?

74voto

Andrew Points 1631

Enregistrez le patch quelque part. Si vous utilisez Linux, vous pouvez utiliser curl :

 curl -L https://github.com/JustinTulloss/zeromq.node/pull/47.patch > /tmp/47.patch

Pour appliquer le correctif, utilisez git apply . Vous pouvez voir si le correctif s'appliquera proprement avec l'option check Accédez à votre répertoire git et exécutez :

 git apply --check /tmp/47.patch

S'il semble que vous souhaitiez appliquer le correctif, supprimez l'option de vérification

 git apply /tmp/47.patch

19voto

manojlds Points 96599

Ajoutez simplement un .patch à la fin pour obtenir le correctif :

https://github.com/JustinTulloss/zeromq.node/pull/47.patch

Vous pouvez faire quelque chose comme ci-dessous :

 $ git checkout master
$ curl http://github.com/JustinTulloss/zeromq.node/pull/47.patch | git am
$ git push origin master

http://help.github.com/send-pull-requests/

5voto

thakis Points 775

Pour laisser git télécharger la pull request 47 et la corriger mylocalbranch , exécutez :

 git checkout -b mylocalbranch
git pull origin pull/47/head

Si la demande d'extraction n'est pas sur le référentiel d'origine, exécutez

 git remote add patchremote https://github.com/JustinTulloss/zeromq.node
git pull patchremote pull/47/head

3voto

Halton Huo Points 31
git fetch -q origin +refs/pull/47/merge:
git checkout -qf FETCH_HEAD

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X