Commits in einem Gitbündel

8

Hy!

Gibt es eine Möglichkeit, eine Liste aller in einem Gitbündel gespeicherten Commits zu erhalten, ohne sie vorher zu klonen?

Es ist einfach, die Köpfe zu bekommen, aber ich konnte keinen Weg finden, mich vollständig abzumelden.

    
mat 22.01.2013, 14:30
quelle

1 Antwort

7

Es ist nicht möglich, eine spezielle Software zu schreiben, um die im Paket enthaltene Packung durchzugehen. Wenn das Bündel mit negativen Referenzen erstellt wurde, ist es möglich, dass es Deltas enthält, die nicht aufgelöst werden können, indem nur Objekte im Bündel verwendet werden (das in das Bündel eingebettete Paket kann dünn sein).

Das Klonen des Bundles (zumindest zu einem bloßen Klon) wird die refs aufteilen und das Paket indizieren, wodurch ein Format erzeugt wird, mit dem Standard-Git-Befehle arbeiten können. Es ist also der einfachste Weg (in Bezug auf Integrationsaufwand) zu lesen es.

Eine Sache, die Sie tun können, um ein Bundle vor dem Zusammenführen in der Vorschau anzuzeigen, besteht darin, es einfach als Remote-Repo hinzuzufügen. Anschließend können Sie es abrufen und auf die Tracking-Refs zugreifen. So etwas wie:

%Vor%

und jetzt können Sie gitk master...bundle/master usw. verwenden, um Zweige im Bundle mit Ihrem lokalen Repo zu vergleichen, und schließlich git pull bundle master , um sie zusammenzuführen.

Sobald Sie fertig sind, bereinigen Sie einfach mit git remote rm bundle

    
araqnid 22.01.2013, 15:32
quelle

Tags und Links