Ich möchte einen neuen GitHub-Zweig namens erstellen release
.
Dieser Zweig muss leer sein ! Es gibt jedoch einen Zweig mit x Commits, und ich möchte keinen Commit-Verlauf haben.
Die einzige Methode, die ich gefunden habe, ist das Erstellen eines lokalen --orphan
Zweigs.
git push origin _branch_
.Antworten:
Was ist los mit der
--orphan
Option? Wenn Sie einen Zweig möchten, der leer ist und keine Historie hat, ist dies der richtige Weg ...Dann können Sie alle Dateien entfernen, die Sie im Staging-Bereich haben (damit sie nicht festgeschrieben werden):
Zu diesem Zeitpunkt befindet sich auf Ihrem Computer ein leerer Zweig.
Bevor Sie auf GitHub (oder ein anderes Git-Repository) pushen können, benötigen Sie mindestens ein Commit, auch wenn es keinen Inhalt enthält (dh leeres Commit), da Sie keinen leeren Zweig pushen können
Schieben Sie es schließlich zur Fernbedienung und öffnen Sie ein Bier
quelle
git add .
Schritt fehlt , nachdem Sie alle Dateien entfernt haben und bevor Sie sich verpflichten?--orphan
ist gut geeignet, um einen leeren Zweig lokal zu erstellen. Um ihn jedoch zu pushen oder mit anderen Zweigen zu interagieren, benötigen Sie ein Commit.Das Erstellen eines neuen Commits für einen verwaisten Zweig ist keine gute Idee, da Sie nicht mit anderen Zweigen interagieren können. Dh
Stattdessen sollten Sie es vorziehen, einen neuen Zweig aus dem ersten Commit des Masters zu erstellen. Wenn das Commit nicht leer ist, können Sie vor dem ersten ein leeres Commit hinzufügen, wie in @houtanb erläutert.
quelle
Sie können auch den Anweisungen hier folgen , um ein leeres Commit im Stammverzeichnis Ihres
master
Zweigs zu erstellen . Erstellen Sie dann einfach Ihrenrelease
Zweig, in dem sich das leere Root-Commit befindet.quelle
Die akzeptierte Antwort führte mich zu einigen Problemen , also tat ich dies:
Und bekam, was ich wollte und ohne Probleme beim Zusammenführen / Ziehen. Ich musste nur ein Basis-Commit auswählen, um meinen zweiten Zweig daraus zu erstellen .
quelle