2016-04-26 3 views
0

Ich habe ein Repository von GitHub gegabelt, einige Änderungen in einem lokalen Zweig vorgenommen, eine Pull-Anforderung gesendet und die Anforderung wurde akzeptiert. Nun ist die Repository ich aus wie folgt aussieht gegabelt haben: ... -> (commit) (merge_my_fix_commit [master]) -> (my_fix_commit) ->Local Fork holt Merge-Commit nicht, nachdem Pull-Request akzeptiert wurde?

wo my_fix_commit ist die befehle ich habe in meinem Pull Antrag gestellt, und merge_my_fix_commit ist die merge commit vom Autor gemacht.

Das Problem ist, dass die Geschichte meiner Gabel bleibt genau wie vor dem Pull-Anforderung akzeptiert wurde: ... -> (commit) -> (my_fix_commit)

git fetch --all machen nicht die merge_my_fix_commit holen. Soll das so sein? Was soll ich tun, damit die Geschichte meiner Gabel genau so aussieht wie das Original-Repo?

Antwort

0

Das erwartete Verhalten, Ihre Gabel sollte nicht aktualisiert werden. Pull-Requests werden auf die Upstream-Repos angewendet, nicht auf die Forks.

Sie können Ihrem Repo eine zweite Fernbedienung hinzufügen, z. B. upstream, die auf das ursprüngliche Repo verweist (git remote add upstream https://github.com/<original_user>/<repo>.git). Holen Sie es (git fetch upstream oder nur git fetch --all) und drücken Sie Änderungen an Ihrer Gabel erneut. Der Prozess ist in den Details here und here beschrieben.

+0

Ich habe bereits das Original Repo als Remote hinzugefügt. Ich tat dies tatsächlich, bevor ich meine GitHub-Gabel als Fernbedienung hinzufügte. Wie dem auch sei: 'git fetch --all 'druckt:' Holen des Ursprungs ... Meinen Fork holen ... ', aber immer noch kein Zeichen des Merge-Commits. – Monfico

+0

@Monfico, wie siehst du das Repo? Z.B. Sie sollten 'gitk --all', nicht nur' gitk' verwenden, um die Änderungen zu sehen, die Sie noch nicht angewendet haben. Sie können auch versuchen, das neue Commit in Ihrem lokalen Master direkt mit 'git checkout master && git merge --f-only upstream/master' zusammenzuführen, was ist das Ergebnis? – madhead

Verwandte Themen