Mir ist klar, dass ich in GitHub zu viele Repos sehe und die einzige Möglichkeit, viele davon zu entfernen, besteht darin, auf github.com/my_user_name/following zuzugreifen, in jedes von ihnen zu gelangen und die Unwatch-Taste zu drücken.
Gibt es keine Möglichkeit, sie schneller und einfacher zu beobachten?
Antworten:
Für die Faulen kann man dies ohne die API relativ schnell unter dieser URL tun: https://github.com/watching
Eine saubere einfache Liste, Klick Klick Klick Klick.
Zusätzlich gibt es eine goldene Schachtel. Deaktivieren Sie diese Option, damit sie nicht automatisch so eingestellt wird, dass alle Repos angezeigt werden, auf die Sie Push-Zugriff erhalten. Ein Hoch auf die Verwaltung des Signal-Rausch-Verhältnisses.
quelle
$('button').filter(function(){return $(this).text() === 'Unwatch'}).click()
. Webseiten + jQuery = beste API!$('button').filter(function(){return $(this).text() === 'Unwatch' && $(this).parent().parent().find("a span").html() == "organisationName" }).click();
Native JS-Version einer vorherigen Antwort . Navigieren Sie zu https://github.com/watching und führen Sie Folgendes aus:
Einzeiler:
Ausgepackt:
quelle
org
wenn die Konstante mehrmals definiert wird . Dies funktioniert bei mir: const orgName = 'YOUR_ORG' const query = document.querySelectorAll (' org = el.querySelector ('a [href ^ = "/' + orgName + '"]') if (org) el.querySelector ('button'). click ()})Array.prototype.slice.apply(document.querySelectorAll('.Box-row')).forEach(el => { const org = el.querySelector('a[href^="/alphagov"]'); if (org) el.querySelector('button').click()})
Array.from(document.querySelectorAll('.repo-list > li')).filter(el => !!el.querySelector('a[href^="/YOUR-ORG"]')).forEach(el => el.querySelector('details-menu button[value="included"]').click())
Aktualisieren Sie dann einfach die Seite und führen Sie sie erneut aus, bis alles fertig ist.Organisationsspezifisch
Wenn Sie nur Repos von einer einzelnen Organisation entfernen möchten, können Sie dies unter https://github.com/watching verwenden
$('.js-subscription-row').each(function(){ var isYourOrganisation = $(this).find("a[href^='/YOUR_ORG']"); if(isYourOrganisation.length){ $(this).find('button:contains("Unwatch")').click(); } });
Ersetzen Sie
YOUR_ORG
durch was auch immer Ihre Organisation heißt.quelle
Github hat eine API . Sie können dazu ein Skript mit der Github-API schreiben, insbesondere mit dem Teil, der sich mit dem Ansehen von Repos befasst .
quelle
Ich habe keine gesehen, aber wir haben die Macht des gesamten Universums (kurz gesagt, wir sind Entwickler). Verwenden Sie die Entwickler-API und erstellen Sie ein kleines Tool. Die API ist sehr beschreibend,
http://developer.github.com/
quelle
Ich habe auch ein Befehlszeilentool gefunden, das die GitHub-API verwendet, um mehrere Repositorys zu deaktivieren: https://www.npmjs.com/package/github-unwatch-org-repos
Ich bin kein Fan von Befehlszeilentools, die mein Kennwort im Klartext in der Befehlszeile haben möchten (daher für alle Systembenutzer sichtbar, die 'ps' zum richtigen Zeitpunkt ausführen und auch im Klartext in ~ / .bash_history gespeichert sind es sei denn, Sie achten äußerst darauf, dies zu vermeiden), also habe ich es nicht versucht.
quelle