2015-06-12 12 views
7

Ein qualitativ hochwertiges Open-Source-Repo existiert auf GitHub und NPM mit einer breiten Benutzerbasis.Publish Fork des GitHub-Projekts zu neuen NPM-Modul, aber Option beibehalten, mit Original zu verschmelzen?

Ich habe das Projekt gespalten und eine wesentliche Erweiterung gemacht. Ich denke, ist bereit, zurück zu verschmelzen. Aber (passend) ist es der Projekteigentümer, der mich anrufen soll, nicht ich. Und es ist jetzt mehrere Wochen ohne Antwort.

Mehrere Benutzer haben in der Repo-Diskussion gefragt, dass diese zurück zusammengeführt werden, und mehr haben mich direkt kontaktiert, um NPM als ein separates Projekt zu veröffentlichen.

Ernsthafte Entwickler können die neue Version über GitHub erhalten, aber es hat nur die rohe Quelle, nicht die verketteten/verkleinerten/zugeschnittenen Versionen, da die README make dist nicht laufen lässt, bis sie zusammengeführt und die Versionsnummer erhöht wird.

I denke, sollte es so einfach sein, wie eine Gabel dieser Gabel zu erstellen, und das als ein neues NPM-Modul zu veröffentlichen. Aber GitHub erlaubt mir nicht, das zu tun („Du ist schon zu diesem Projekt suchen“)

Gibt es eine Möglichkeit, dass ich dies als neues NPM Modul veröffentlichen kann, behält aber immer noch die Optionen für

  1. meine Gabel eine Pull-Anforderung an die ursprünglichen
  2. meiner Gabel zu holen Upstream-Änderungen aus der ursprünglichen
  3. meiner Untergabel zu holen stromauf ändert mich von meiner Gabel (und somit die original)
vorzulegen

Erstelle ich einen neuen GitHub-Account unter einer neuen E-Mail-Adresse?

Forking a fork of my repo in GitHub

+5

Sie sollten keinen neuen Fork brauchen, nur um in npm zu publizieren. Sie können einfach Ihre vorhandene Verzweigung verwenden und zwei Zweige beibehalten: eine "stabile" Verzweigung, die Sie in npm veröffentlichen, und eine Work-in-Progress-Verzweigung, die ständig Änderungen mit dem ursprünglichen Projekt synchronisiert. – user2943490

+0

@ user2943490 Ihr Kommentar ist die Antwort. Es ist möglich, einen Zweig eines Repos (außer "Master") zu npm und bower zu veröffentlichen. – prototype

Antwort

1

@ user2943490 gab Ihnen die richtige Lösung Zweige zu verwenden, anstatt zusätzliche Gabeln.

Lassen Sie mich dies erweitern, um Ihre Fragen zu beantworten, immer noch in der Lage zu sein, in mehrere Richtungen zu drücken oder zu ziehen. Die Art, wie git oder besser gesagt seine Datenstrukturen entworfen werden, macht es so, dass Sie immer Push und Pull zwischen beliebigen Repositories, egal was. Es macht keinen Unterschied, auch wenn sie nie eine gemeinsame Herkunft hatten.

Ja, Sie können wilde Konflikte bekommen, und offensichtlich, wenn Sie versuchen, völlig unzusammenhängende Dateien zusammenzuführen, wird Chaos wahrscheinlich folgen, aber es wird immer noch möglich sein. Git kümmert sich nur um den tatsächlichen Inhalt der Dateien, nicht darum, woher sie stammen.

In Ihrem Beispiel, wie Sie gemeinsame commits mit dem Upstream haben, wird es nie ein Problem sein.