Github branch supprimée automatiquement puis-je modifier ma PR ?

Récupérer un miss-click

Le problème exposé dans ce sujet a été résolu.

Si supprimée avec GitHub, il y a normalement un bouton Restore branch quelque part pour ça.

Sinon, la suppression sur GitHub ne supprime bien évidemment pas la branche en local, si tu l’as toujours.

Sinon, il se peut qu’elle soit encore présente quelque part si le garbage collector de git n’est pas encore passé. Pour ce faire, il te faut le SHA du dernier commit de la branche manquante, ce que tu peux retrouver avec git reflog si tu ne l’as plus. Ensuite, il suffit de faire git checkout -b nom-de-la-branche-recrée le-sha-retrouvé, et pouf, tu devrais retrouver ta branche et tous ses commits :) .

+1 -0

Salut,

Tu as une copie en local, non ? Dans ce cas il suffit de la push à nouveau. Sinon, si tu as un numéro de commit, il te suffit de le checkout. Git supprime rarement un truc définitivement, c’est le rôle du gc qui n’est pas aggressif à moins de le lancer soi même ou changer sa config.

+2 -0

Bah pour ça il faut retrouver la branche ? (avant de la modifier éventuellement, et puis de pousser vers la même référence distante, une fois que tu as re-forké car sinon je soupçonne que GitHub ne te laissera pas faire)

+0 -0

Là comme ça un truc qui pourrait se tenter c’est de voir s’il n’y a pas un bouton Restore branch. Ou de rouvrir la PR et de voir si ce n’est pas le cas.

Sinon je ne sais pas. Je n’ai rien trouvé dans l’aide de GitHub mais tu peux tenter de les contacter : ils sont réactif et sauront mieux que nous comment gérer ce genre de cas assez particuliers. Si tu le fais, un retour serait d’ailleurs intéressant ici, je pense.

Je soupçonne qu’il faudrait jouer avec git push --set-upstream ou git branch --set-upstram-to en donnant une bonne référence (peut-être refs/pull/<numéro>/head ou refs/pull/<numéro>/head:pr/<numéro> ? J’ai déjà vu passer cette référence dans mes logs quand je récupérais des PR, et c’est ce sur quoi se base mon alias git pr). Je pense qu’on devrait pouvoir trouver la référence distante à utiliser pour les PR sur GitHub, sur internet.

+0 -0

Là comme ça un truc qui pourrait se tenter c’est de voir s’il n’y a pas un bouton Restore branch. Ou de rouvrir la PR et de voir si ce n’est pas le cas.

Sinon je ne sais pas. Je n’ai rien trouvé dans l’aide de GitHub mais tu peux tenter de les contacter : ils sont réactif et sauront mieux que nous comment gérer ce genre de cas assez particuliers. Si tu le fais, un retour serait d’ailleurs intéressant ici, je pense.

Pour la finalité de mon changement, je ne vais pas les embêter.

Je soupçonne qu’il faudrait jouer avec git push --set-upstream ou git branch --set-upstram-to en donnant une bonne référence (peut-être refs/pull/<numéro>/head ou refs/pull/<numéro>/head:pr/<numéro> ? J’ai déjà vu passer cette référence dans mes logs quand je récupérais des PR, et c’est ce sur quoi se base mon alias git pr). Je pense qu’on devrait pouvoir trouver la référence distante à utiliser pour les PR sur GitHub, sur internet.

Amaury

J’ai essayé avec git pr et de créer une branch ayant le nom de mon ancienne branch.

Tu as déjà réussi à push avec refs/pull/<numéro>/head ?

E:\ (pr-353 -> origin)
λ git push upstream pull/123/head
error: src refspec pull/123/head does not match any
error: failed to push some refs to 'https://github.com/mozilla/node-a/'

E:\ (pr-353 -> origin)
λ git push upstream pull/353/head
error: src refspec pull/353/head does not match any
error: failed to push some refs to 'https://github.com/mozilla/node-a/'

E:\ (pr-353 -> origin)
λ git push upstream pull/353/head -f
error: src refspec pull/353/head does not match any
error: failed to push some refs to 'https://github.com/mozilla/node-a/'

E:\ (pr-353 -> origin)
λ git push upstream pull/353/head -f
error: src refspec pull/353/head does not match any
error: failed to push some refs to 'https://github.com/mozilla/node-a/'

E:\ (pr-353 -> origin)
λ git push upstream refs/pull/353/head -f
error: src refspec refs/pull/353/head does not match any
error: failed to push some refs to 'https://github.com/mozilla/node-a/'

E:\ (pr-353 -> origin)
λ git push refs/pull/353/head -f
fatal: 'refs/pull/353/head' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

E:\ (pr-353 -> origin)
λ git push pull/353/head -f
fatal: 'pull/353/head' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
+0 -0

J’ai pas compris. Tu as essayé git push --set-upstream origin feat-multi-package-split ?
De ce que j’ai compris, c’est le seul truc qui pourrait marcher.

Après, il y a la solution de faire une nouvelle PR ? Ça prend 10s et ça t’embête vraiment beaucoup moins.

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte