Ich hatte ein Git-Repository auf GitHub gehostet. Ich habe kürzlich die Maschine gewechselt und die Dateien manuell auf die neue Maschine kopiert, anstatt git pull zu tun. Ich habe das irgendwie vergessen. Jetzt habe ich einige Änderungen vorgenommen und ein neues Git-Repository initiiert, während ich das GitHub-Repository als Remote hinzugefügt habe. Ich muss wissen, wie ich die beiden Repositorys zusammenführen kann, d. H. Meinen Commit-Verlauf vom GitHub-Repository beibehalten und auch meine am neuen vorgenommenen Änderungen beibehalten kann. Danke!

git
1
Humza Khan 29 Juni 2018 im 01:32

3 Antworten

Beste Antwort

Wenn es nicht zu viele Änderungen gibt (nur ein Commit ist wert), ist dies wirklich einfach:

  1. Klonen Sie das (Original-) Repo von Github in einen neuen Ordner. git clone ssh://... newfolder
  2. Kopieren Sie alle Ihre Dateien aus dem Ordner, in dem Sie Ihre Änderungen vorgenommen haben, und fügen Sie sie ein. Überschreiben Sie die Dateien in newfolder
  3. Machen Sie ein Commit in newfolder und drücken Sie. Zu diesem Zeitpunkt ist Ihre Github-Historie korrekt. Löschen Sie den alten Ordner und benennen Sie den neuen, wie Sie möchten.
1
mkasberg 28 Juni 2018 im 23:04

Sie müssen nur Ihren neuen Zweig mit dem vorgelagerten Zweig neu gründen. Sie können dies tun, indem Sie mit git branch -u origin/my_branch einen Upstream-Zweig für Ihren neuen Zweig einrichten (vorausgesetzt, die von Ihnen hinzugefügte Fernbedienung heißt origin und Sie befinden sich derzeit in Ihrem neuen Zweig) und dann git pull --rebase ausführen, um die Basis neu zu erstellen Ihre Niederlassung. Danach können Sie Ihre neuen Commits zusätzlich zu Ihren vorhandenen Commits auf GitHub git push.

2
r3mus n0x 28 Juni 2018 im 22:55

Da Sie die Remote-URL bereits festgelegt haben, können Sie entweder einen neuen Zweig erstellen, um die Änderungen zu speichern, und ihn verschieben. Später können Sie die Zweige bei Bedarf zusammenführen. Oder Da Sie ein lokales Repository erstellt und die Remot-URL festgelegt haben, können Sie nach dem Festschreiben direkt in Ihr Repository pushen. Hoffe das hilft.

1
Arjun Vinod 29 Juni 2018 im 06:03