Ich habe Git Repo mit zwei unabhängigen Zweigen, Master und Configs. Ich habe Konfigurationen erstellt, alle Dateien gelöscht und dann nur in Konfigurationsdateien abgelegt. Jetzt möchte ich dies auf Remote-Repo übertragen, aber sozusagen einen neuen, leeren Zweig (ohne Protokolle aller meiner Änderungen und alten Revisionen des ursprünglichen Zweigs).
Wie kann ich die gesamte Geschichte löschen und verschieben?
Antworten:
Durch das Löschen aller Dateien wird der Verlauf nicht gelöscht. Sie müssen zuerst einen Zweig erstellen, der keinen Verlauf hat, und dann Ihre Konfigurationsdateien hinzufügen. Heutzutage
git checkout
gibt es eine--orphan
Option, mit der ein Zweig ohne Verlauf erstellt wird. Hier sind die Informationen zur--orphan
Option:Hier ist ein Link zur Dokumentation zum Auschecken . Sie können auch laufen
git help checkout
.Wenn Sie Ihren Zweig ohne Verlauf erstellt haben und ihn dann auf den Server übertragen, wird er auch nicht mehr über diesen Verlauf verfügen. FWIW, es hilft mir, mir vorzustellen, dass
git push
"der Remote-Zweig genauso aussieht wie mein lokaler". Wenn Sie also Geschichte haben und pushen, wird es Geschichte haben. Wenn Sie dies nicht tun, wird der Push-Zweig dies nicht tun.quelle
Wie kann ich die gesamte Geschichte löschen und verschieben?
Dann können Sie Ihre ausführen
vgl. dieser Einzeiler
quelle
Ich musste dies tun, um einem Freiberufler Code zu senden, ohne private Informationen weiterzugeben oder meinen Verlauf zu löschen.
Falls einer von Ihnen SourceTree verwendet, habe ich es so geschafft. Bitte lassen Sie mich wissen, wenn ich etwas falsch gemacht habe oder etwas vergessen habe, da ich mit der Verwaltung der Quellcodeverwaltung nicht vertraut bin.
Als ich bitbucket überprüfte, schien dies funktioniert zu haben und meine Commit-Historie zu verwerfen.
Hoffe das hilft jemandem.
quelle