2012-11-25 10 views
6

Ich habe gerade begonnen, Git unter Windows zu verwenden. Ich hosting auf BitBucket und verwende TortoiseGit als Windows-Client.Log Graph in TortoiseGit zeigt keine Verzweigung/Zusammenführung?

Die Dinge bewegen sich in der richtigen directon, aber ich bin an einem Punkt ratlos. Ich habe an der Master-Filiale gearbeitet und irgendwann eine neue Niederlassung geschaffen. Dann arbeitete ich weiter an der neuen Niederlassung und machte weiter, drängte. Schließlich, als ich fertig war, fusionierte ich diesen neuen Zweig (codetidy) wieder in den Master.

Jetzt, wenn ich "Log anzeigen" und wählen Sie "Alle Zweige", bekomme ich nur eine gerade Linie in der Grafik. Es gibt keine Informationen darüber, wann eine Zweigstelle entfernt wurde und wann sie zusammengeführt wurde. Bitte hep mich finden Sie diese Informationen.

Version graph

Antwort

6

, die wahrscheinlich ist, weil Ihr merge ein Mergevorspulen war, was bedeutet, dass es keine zu master zwischen der Zeit gemacht Commits waren, als codetidy geschaffen wurde, und als es wieder verschmolzen - also verschiebt Git hilflos master, um auf denselben Commit zu verweisen (weil er bereits genau den gleichen Dateiinhalt wie eine Zusammenführung hat), anstatt einen unnötigen Zusammenführungs-Commit zu erzeugen.

Wenn Sie dieses Verhalten nicht möchten, müssen Sie Git zwingen, ein separates Zusammenführungs-Commit zu erstellen - in der Befehlszeile geschieht dies mit git merge --no-ff. In TortoiseGit erfolgt dies über das Kontrollkästchen "No Fast Forward" im Merge-Fenster (ein Screenshot finden Sie unter this previous StackOverflow answer).

+0

ja, Sie haben Recht. Es gab kein Commit auf Master. Das klingt weise, von Git gemacht. Aber als git Master verschoben hat, um auf den letzten Commit zu verweisen, wenn codetidy, was ist, wenn ich jetzt endlich den Zweig lösche, da ich praktisch fusioniert bin und mit der Verzweigung fertig bin? –

+1

Dann wird "Master" auf die gleiche Stelle zeigen, auf die beide Zweige gerade zeigen. Zweige in Git sind einfach Zeiger auf Commits; Zur Zeit haben Sie zwei Zeiger, die auf denselben Commit zeigen. Wenn Sie einen der Zeiger löschen, zeigt der andere weiterhin auf diesen Commit. – Amber