Git / Github - Frage zu Merge, Fetch, rebase etc.

elChupete

elChupete

Aktives Mitglied
Thread Starter
Dabei seit
13.10.2007
Beiträge
859
Reaktionspunkte
247
Moin moin,

Jetzt hoffetnlich im Richtigen unterforum.....

Es gibt einen Entwickler, den ich mit deutschen Übersetzungen unterstütze.

Dazu habe ich sein Projekt (nennen wir es "Extern" ) auf Github geforked ("elChupete/Master"). Remote zu "Extern" ist gesetzt.
"elchupete/Master" habe ich lokal gecloned.

Meine Änderungen mache ich in einem Branch ("elChupete/masterbranch")

Struktur ist also

"Extern"
- elchupete/master
- elchupete/masterbranch

Von Zeit zu Zeit Synce ich von Extern nach elchupete/master. Dies geschieht mittels Github Desktop App.

Dies erzeugt jedesmal einen Commit Eintrag in elchupete/master "Merged Extern...."

Github sagt mir jetzt, dass mein elchupete/master 1 commit ahead zu extern ist. OK aber eigentlich sind Extern und elchupete/master ja auf dem selben stand.

Wenn ich jetzt meine Übersetzung im Branch mache, committe ich die in den Branch und per Pullrequest gehen die dann in den elchupete/master

Als Folge gibt es einen neuen Commit Entry in elchupete/master "Update translation..." und elchupete/master is 2 commits ahead of Extern

Wenn ich jetzt meine Änderungen an den anderen Entwickler schicke (per pull request) bekommt er jetzt 2 Commits
1) Merged Extern
2) Update Translation

Schlimmer wird es noch wenn zwischen den Übersetzungs updates mehrere Sync's extern -> elchupete/master liegen.

Dann kann der Pull schonmal so aussehen.
1 ) Merged Extern
2) Merged Extern
3) Updated Translation
4) Merged Extern

Frage: Wie kann ich VOR meinem Pull der letzten Übersetzungscersion den Head von elchupete/master zurücksetzen so als ob ich ganz frisch geforked hätte.

Ich möchte in meinem Pull für Extern eigentlich nur meinen letzen Übersetzungs Commit drin haben.

Geht das und wenn ja wie?

Ich habe schon alle möglichen Varianten für den Sync Extern -> elchupete/master probiert: Fetch, Pull, Reset, rebase aber ich bekomme es nicht hin, dass elchupete/Master bei Github als "in Sync" (= weder ahead noch behind) mit Extern ist.

Jede Erklärung / Hilfe ist hier Willkommen

Danke

Stefan
 
So ich denke ich habe es jetzt raus

1. Fehler Ich hatte einen Mix von HTTPS und SSH remotes
2. in meinen elchupete/master nie nicht selber rein committen. Dadurch ist der dann immer ahead und der rebase kann nicht klappen.

Danke trotzdem
 
Zurück
Oben Unten