Utilisez l'API de Bitbucket pour collecter et sauvegarder les informations du référentiel.
L'objectif principal est de gérer la suppression du référentiel en raison de la suppression de Mercurial, mais il prend également en charge le référentiel Git.
Initialement, l'abolition de Mercurial était prévue le 31 mai 2020, mais en raison de la situation, elle a été reportée d'un mois.
Cet article ne couvre pas le sujet de la migration du référentiel. Veuillez vous référer aux articles suivants.
API
Des informations telles que le référentiel Bitbucket peuvent être obtenues avec l'API.
J'ai fait référence à l'article suivant.
J'ai écrit un script pour collecter des informations en Python.
Veuillez réécrire le nom d'utilisateur et le mot de passe pour obtenir les informations du référentiel privé.
3e ligne
authinfo = "USER:PASS"
Lorsque vous exécutez le script, l'API collecte des informations sur le référentiel et les extraits de code. Combine les informations divisées en plusieurs pages en un seul fichier. (En forme de)
Les informations telles que les problèmes et les demandes d'extraction sont enregistrées dans un répertoire pour chaque référentiel. (Non façonné)
Les référentiels et les extraits ne sont pas clonés automatiquement. Exécutez le script shell pour le clone de sortie.
Nous accordons du poids à l'accès.
Ligne 19
time.sleep(1)
Placez le JSON enregistré dans le répertoire de cache et faites-y référence lorsque vous l'exécutez à nouveau. Si vous souhaitez le récupérer, supprimez-le.
Le JSON dans le cache est enregistré lors de son envoi. Il n'y a pas de saut de ligne, c'est donc une bonne idée de le formater lors de la lecture.
Exemple de mise en forme
python -m json.tool cache/repositories-1.json
Obtenez les informations dans les liens qui font référence à l'API.
"links": {
"watchers": {
"href": "https://api.bitbucket.org/2.0/(Omis)"
},
"branches": {
"href": "https://api.bitbucket.org/2.0/(Omis)"
},
"tags": {
"href": "https://api.bitbucket.org/2.0/(Omis)"
},
"commits": {
"href": "https://api.bitbucket.org/2.0/(Omis)"
},
(Omis)
},
Le code source de json.tool peut être utilisé comme exemple de création d'une commande simple à l'aide des fonctions de la bibliothèque.