Verwenden Sie die Bitbucket-API, um Repository-Informationen zu sammeln und zu sichern.
Der Hauptzweck besteht darin, das Löschen des Repositorys aufgrund der Ablehnung von Mercurial zu behandeln, unterstützt aber auch das Git-Repository.
Ursprünglich war die Abschaffung von Mercurial am 31. Mai 2020 fällig, wurde jedoch aufgrund der Situation um einen Monat verschoben.
Dieser Artikel behandelt nicht das Thema der Repository-Migration. Bitte beachten Sie die folgenden Artikel.
API
Informationen wie das Bitbucket-Repository können mit der API abgerufen werden.
Ich habe auf den folgenden Artikel verwiesen.
Ich habe ein Skript zum Sammeln von Informationen in Python geschrieben.
Bitte schreiben Sie den Benutzernamen und das Passwort neu, um die Informationen des privaten Repositorys zu erhalten.
3. Zeile
authinfo = "USER:PASS"
Wenn Sie das Skript ausführen, sammelt die API Informationen über das Repository und die Snippets. Kombiniert Informationen, die in mehrere Seiten unterteilt sind, in einer Datei. (Geformt)
Informationen wie Probleme und Pull-Anforderungen werden für jedes Repository in einem Verzeichnis gespeichert. (Ungeformt)
Repositorys und Snippets werden nicht automatisch geklont. Führen Sie das Shell-Skript für den Ausgabeklon aus.
Wir legen Wert auf den Zugang.
Zeile 19
time.sleep(1)
Legen Sie den gespeicherten JSON in das Cache-Verzeichnis und verweisen Sie darauf, wenn Sie ihn erneut ausführen. Wenn Sie es erneut erhalten möchten, löschen Sie es.
Der JSON im Cache wird beim Senden gespeichert. Es gibt keine Zeilenumbrüche, daher ist es eine gute Idee, diese beim Lesen zu formatieren.
Beispiel gestalten
python -m json.tool cache/repositories-1.json
Rufen Sie die Informationen in den Links ab, die auf die API verweisen.
"links": {
"watchers": {
"href": "https://api.bitbucket.org/2.0/(Weggelassen)"
},
"branches": {
"href": "https://api.bitbucket.org/2.0/(Weggelassen)"
},
"tags": {
"href": "https://api.bitbucket.org/2.0/(Weggelassen)"
},
"commits": {
"href": "https://api.bitbucket.org/2.0/(Weggelassen)"
},
(Weggelassen)
},
Der Quellcode von json.tool kann als Beispiel für die Erstellung eines einfachen Befehls mithilfe der Funktionen der Bibliothek verwendet werden.