web-dev-qa-db-fra.com

Dois-je conserver mes référentiels forkés GitHub pour toujours?

J'ai donc bifurqué le référentiel de quelqu'un d'autre, apporté quelques modifications, soumis une demande d'extraction et mes modifications ont été intégrées au produit. Génial!

Mais ... que dois-je faire avec mon dépôt forké? Y a-t-il une raison impérieuse pour moi de conserver mon référentiel, ou dois-je continuer et le supprimer? Je n'ai pas l'intention de faire de contributions supplémentaires, mais si je change d'avis, je suppose que je peux toujours simplement le redéfinir.

Je ne suis pas vraiment préoccupé par la conservation d'une sauvegarde. Je crains davantage de rompre des liens, de perdre des messages de validation, etc.

331
Brant Bobby

La suppression de référentiels bifurqués effacera l'historique de vos demandes d'extraction.

PR with unknown repository

La suppression d'un référentiel bifurqué supprimera toutes les informations associées à votre référentiel. Cela peut affecter rétroactivement toutes les références à votre référentiel, y compris les demandes d'extraction qui ont déjà été fusionnées. (Voir La demande d'extraction affiche "repo inconnu" après la suppression de fork )

Vos commentaires et commits devraient être conservés sur toutes les demandes d'extraction associées à votre référentiel, mais vous le ferez à vos propres risques.

Cependant, la suppression d'anciennes branches après une fusion est parfaitement sûre.

Alors que la suppression des référentiels doit être évitée, la suppression des branches inutilisées est parfaitement acceptable. En fait, GitHub vous encourage à supprimer les anciennes branches .

Rangement après les demandes de tirage

Chez GitHub, nous aimons utiliser les demandes de tirage toute la journée, tous les jours. Le seul problème est que nous nous retrouvons avec beaucoup de branches disparues après la fusion ou la fermeture des demandes de tirage. De temps en temps, l'un de nous effacerait ces branches avec un script, mais nous pensions qu'il serait préférable de prendre soin de cette étape dans le cadre de notre flux de travail régulier sur GitHub.com.

À partir d'aujourd'hui, après la fusion d'une demande de tirage, vous verrez un bouton pour supprimer la branche persistante:

Delete this branch button

Si la demande d'extraction a été fermée sans être fusionnée, le bouton sera un peu différent pour vous avertir de la suppression des validations non fusionnées:

Delete branch with warning

Bien sûr, vous ne pouvez supprimer que les branches des référentiels auxquels vous avez accès Push.

Profitez de vos dépôts bien rangés!

Alternativement, si vous ne voulez vraiment pas les garder, vous pouvez archiver un référentiel pour indiquer qu'il n'est plus activement maintenu.

Voir également

51
Stevoisiak

Si votre demande d'extraction a été acceptée et que vous n'avez apporté aucune autre modification que vous pourriez utiliser personnellement, vous devez la supprimer.

  1. La suppression ne nuit à rien.
  2. Vous pouvez toujours refork si vous en avez besoin
  3. Il réduit les dépôts inutiles dans les résultats de recherche lorsque les gens recherchent quelque chose
  4. Si vous utilisez votre GitHub comme une sorte de curriculum vitae pour des emplois/contrats potentiels, cela semble mieux si vous n'avez pas des dizaines de dépôts fourchus sur lesquels vous ne travaillez pas actuellement. Vous aurez l'air plus efficace.
  5. Il aide votre propre santé mentale lorsque vous n'avez pas à parcourir des centaines de référentiels inutiles.
  6. C'est mieux pour GitHub. :)
212
tharris

Vous pouvez supprimer votre fork dès que vous soumettez une Pull Request , qu'elle soit fusionnée ou non. GitHub stocke tous les PR dans le référentiel en amont , ce qui signifie que les modifications proposées sont suivies même si la fourche est supprimée.

Cela simplifie la décision.

Vous pouvez toujours garder la fourchette si:

  • Vous contribuerez plus immédiatement (par exemple, étendre le PR existant ou ouvrir de nouveaux PR)

Vous pouvez supprimer la fourchette si:

  • Vous voulez un portefeuille de projets propre sous votre nom
80
Dennis

Je voudrais probablement le tar/gzip et le mettre dans un répertoire d'archives, puis le supprimer 3 ans plus tard. ;) Honnêtement Si vous n'avez pas l'intention de retravailler dessus pour les prochains mois et que vous ne l'avez pas utilisé depuis un certain temps, je pense qu'il serait prudent de le supprimer.

21
Zachary K

Juste pour ajouter aux réponses fournies - GitHub lui-même recommande de supprimer ("ranger") les référentiels fourchus après leur fusion.

Cela peut être fait directement dans la demande de tirage après la fusion - veuillez consulter cet article de blog .

De plus, à partir de ce moment, je ne vois aucun inconvénient dans les commentaires:

  • même après la suppression du référentiel forké, il y a un message correct dans la demande d'extraction (pas de "référentiel inconnu")
  • le référentiel auquel vous avez contribué est toujours répertorié dans votre activité de contribution
  • vous êtes toujours répertorié dans les contributeurs de ce référentiel

Je ne recommanderais pas de le supprimer avant de fusionner comme suggéré par @Dennis, car vous devrez peut-être encore apporter des modifications au code si les auteurs le demandent.

9
Marius Balčytis