Wie verschiebe ich ein Problem auf Github in ein anderes Repo?

96

Es passiert ab und zu. Einige Bibliotheken hängen von anderen ab, und ein Benutzer öffnet ein Problem, das zum falschen Repo gehört. Kann ich das Problem auf das andere Repo verschieben?

Sie könnten argumentieren, dass das Problem als Problem beider Repos angesehen werden könnte, da eines vom anderen abhängt und solange eines nicht richtig funktioniert, tun beide es nicht. Aber ich würde lieber über Lösungen für das Problem in dem Repo sprechen, in das es gehört.

fent
quelle
Sie müssen nicht länger Administrator der Quell- und Ziel-Repositorys sein, um ein Problem zwischen ihnen zu verschieben. Siehe meine Antwort unten .
VonC

Antworten:

34

Informationen zum Übertragen von Problemen finden Sie in den GitHub-Dokumenten .

Übertragen eines offenen Problems in ein anderes Repository

Navigieren Sie auf GitHub zur Hauptseite des Repositorys.

Klicken Sie unter Ihrem Repository-Namen auf Probleme .

Klicken Sie in der Liste der Probleme auf das Problem, das Sie übertragen möchten.

Klicken Sie in der rechten Seitenleiste auf Dieses Problem übertragen .

Matthew McCullough
quelle
2
Es wäre großartig, alle Ausgaben eines Repos in ein anderes verschieben zu können.
CGFoX
@CGFoX erstellte eine Feature-Anfrage unter: github.com/isaacs/github/issues/1605
Ciro Santilli 27 冠状 病 六四 事件 27
Es ist zu beachten, dass Sie für beide Repos eine Schreibberechtigung benötigen, da diese Option sonst nicht verfügbar ist.
Brett Sutton
60

Nein, offiziell können Sie Probleme nicht zwischen Repositorys verschieben.

Es gibt jedoch einen Hack, Github-Issues-Import , eine Art Plugin, um Probleme von einem Repository in ein anderes zu importieren.

Daniel Ribeiro
quelle
4
Erstellt eine weitere gehackte Gh-Issues-Importer-Version hier github.com/collective/collective.developermanual/blob/master/…
Mikko Ohtamaa
2
gh-issues-importschien mir kaputt zu sein (bekam immer wieder eine 404). Ich habe Mikkos Skript verwendet und es hat gut funktioniert. Es wurden jedoch keine geschlossenen Themen geschlossen oder Etiketten oder Meilensteine ​​importiert. Aktualisieren Sie einfach den Benutzernamen / das Passwort und entfernen Sie den Verweis auf colored.
Alexandre
3
Damit Mikkos Skript für geschlossene Probleme funktioniert, fügen Sie einfach state=closeddie Abfrageparameter der URL in der get_issuesMethode hinzu.
Calvin
1
Mikkos Skript funktioniert hervorragend, enthält jedoch einen Fehler. Es erzeugt Probleme in umgekehrter Reihenfolge. Fügen Sie einfach & sort = created & direction = asc zu den Abfrageparametern der URL in der Methode get_issues hinzu.
Marco Fucci
1
Ich habe auch ein einfaches Issue-Importer-Skript erstellt, um ein einzelnes Issue von einem Repo in ein anderes zu verschieben. Bei jeder Verwendung werden Sie nach Benutzername, Passwort, Quell- und Ziel-Repo gefragt, sodass Sie den Code überhaupt nicht ändern müssen. Etiketten und Meilensteine ​​werden ebenfalls kopiert. Vielleicht ist es für jemanden nützlich: github.com/jotweh/IssueRelocate
Jan Wy
3

Problem verschieben Wenn Sie über die ZenHub-Integration verfügen , wird diese Schaltfläche ganz unten rechts angezeigt, wenn Sie ein Problem anzeigen . Dies ermöglicht die Ausgabe wird kopiert zu einem anderen Repo in der gleichen Organisation oder kopiert und geschlossen .

Und ja, "Move Issue" ist eine falsche Bezeichnung.

Es scheint immer noch keine Möglichkeit zu geben , ein versehentlich eingereichtes Problem zu verschieben (zu kopieren und zu löschen) oder einfach zu löschen.

BEARBEITEN: Beachten Sie, dass die Version 1 dieser Funktion erhebliche Einschränkungen aufweist, z. B. das Zurücklassen einiger (der meisten?) Metadaten des Problems, das Nichtbenachrichtigen von Abonnenten usw.

Spike0xff
quelle
Hmm, ich sehe diese Schaltfläche nicht, wenn ich zu einer meiner geöffneten Ausgaben gehe.
Fent
1
@DeaDEnD Oh, verdammt, mein schlechtes. Es ist eine ZenHub-Funktion, die nicht in GitHub integriert ist. Nun, das ist überhaupt nicht verwirrend, wenn zwei Organisationen unabhängig voneinander auf derselben Web-Benutzeroberfläche hacken.
Spike0xff
1
Und bin ich nur ein dummer Trottel, wenn ich denke, dass in meinem englischen Dialekt, wenn Sie etwas bewegen , es an einem neuen Ort auftaucht und nicht mehr dort ist, wo es vorher war ? Eine Benutzeroberfläche mit zwei Wörtern , und sie konnten nicht beide richtig verstehen?
Spike0xff
Ich habe es versucht, konnte aber meine Organisations-Repos in der Liste "Verschieben nach" nicht finden
Alanjds
2

Dies ist jetzt (Mai 2019) einfacher.

Siehe " Verbesserungen beim Erteilen von Übertragungsberechtigungen ".

Benutzer mit Schreibzugriff auf zwei Repositorys können jetzt die Problemübertragung verwenden, um Probleme zwischen ihnen zu verschieben.
Bisher konnten nur Benutzer mit Administratorrechten für beide Repositorys Probleme übertragen.

Darüber hinaus werden wir nicht länger zulassen, dass Probleme von privaten in öffentliche Repositories übertragen werden.

Weitere Informationen finden Sie unter " Übertragen eines Problems in ein anderes Repository ".

VonC
quelle
1

Die visuelle Antwort aus den Github-Dokumenten:

Übertragen eines offenen Problems in ein anderes Repository

  1. Navigieren Sie auf GitHub zur Hauptseite des Repositorys.
  2. Klicken Sie unter Ihrem Repository-Namen auf Probleme. Registerkarte "Probleme"
  3. Klicken Sie in der Liste der Probleme auf das Problem, das Sie übertragen möchten.
  4. Klicken Sie in der rechten Seitenleiste auf Problem übertragen. Schaltfläche zum Übertragen des Problems
  5. Verwenden Sie das Dropdown-Menü Repository auswählen und wählen Sie das Repository aus, in das Sie das Problem übertragen möchten.

Wählen Sie eine Repository-Auswahl

  1. Klicken Sie auf Problem übertragen.

Schaltfläche "Problem übertragen"

Riyafa Abdul Hameed
quelle
Ja, die Dokumentation, die ich in meiner eigenen Antwort erwähne
VonC