2014-12-11 4 views
35

Angenommen, ich bin Experiment Experiment Master Experiment und es gibt Konflikte in den Dateien. Und natürlich sind in beiden Filialen Dateien gelöscht. Also, wenn ich die Konflikte auflöse, in git status sehe ich deleted by us und deleted by them. Es ist sehr verwirrend. Gibt es eine Möglichkeit zu verstehen, was sie bedeuten? Wer ist sie und wer ist uns?git Rebase "von uns gelöscht" und "von ihnen gelöscht"

Oder während der Umbenennung gibt es eine andere Möglichkeit zu wissen, welche Datei von welchem ​​Zweig gelöscht wurde? Wie den Filialnamen drucken?

Antwort

40

Beachten Sie, dass ein rebase merge funktioniert von jedem Abspielen begehen aus dem Arbeitszweig auf dem <upstream> Zweig. Aus diesem Grund, wenn ein Zusammenführungskonflikt auftritt, ist die Seite, die als unsere berichtet wird, die so weit rebased Reihe, beginnend mit <upstream>, und ihre ist die funktionierende Verzweigung. Mit anderen Worten, die Seiten sind vertauscht.

https://git-scm.com/docs/git-rebase

Daher Dateien „von uns gelöscht“ sind diejenigen, die auf dem Zweig gelöscht wurden Sie auf (der letzte Zweig) sind Rebasing und Dateien „indem sie gelöscht“ sind Dateien, die waren gelöscht in der Branche, in der Sie eine Neuausrichtung durchführen (die, die gelöscht wird).

AFAIK gibt es keinen Schalter, um die spezifischen Namen der Zweige explizit auf den offiziellen Tools anzuzeigen. Wenn ich nicht falsch liege, ist das nur eines dieser Dinge, die Sie lernen müssen, um die anfängliche Verwirrung zu überwinden.

Zu ihrer Ehre, es macht sehr viel Sinn, wenn Sie darüber nachdenken.

+40

"Zu ihrer Ehre, es macht sehr viel Sinn" - sollte das nicht sein "Zu * unserem * Kredit ..." :-) –

+4

"Zu unserer Ehre, es macht sehr viel Sinn, wenn sie Denk darüber nach." – kkm

+3

'es macht viel Sinn, wenn Sie darüber nachdenken.Nö, es ist sicher nicht. Vor allem, wenn Sie einen Zweig neu erstellen, der von Ihnen erstellt wurde. Sie = ich. – Cheeso

15

fand ich die Antwort here:

Wenn Sie fusionieren, us auf den Zweig verweisen, in denen Sie verschmelzen, wie zu them Gegensatz zu der Niederlassung zusammengeführt werden.

Wenn Sie rebase bezieht sich us die Upstream-Zweig und them ist der Zweig Sie sich bewegen. Es ist ein wenig kontraintuitiv im Falle einer Rebase.

Der Grund ist, dass Git die gleiche Merge-Engine für Rebase verwendet, und es ist tatsächlich Kirsche pflücken Ihre Sachen in den Upstream-Zweig. us = in, them = aus.

+0

Auch: http://stackoverflow.com/a/3052118/6309 – VonC

Verwandte Themen