Listet alle Commits in einer Zweigstelle auf

8

Ich habe einen Feature-Zweig mit dem präzisen Namen feature , der ungefähr 100 Commits enthält, die alle auf eine Art von Feature bezogen sind. Diese Commits wurden im Laufe der Zeit alle in den Master-Zweig zusammengeführt. Ich möchte alle Commits auflisten, die in der Zweigstelle waren, damit ich die Funktion zu einem anderen Projekt hinzufügen kann.

Grundsätzlich möchte ich Commit-IDs für die grünen Punkte in der Grafik unten haben.

Wie kann ich das in Git machen, indem ich zu gitk oder einem ähnlichen Tool gehe und alle relevanten Commit-IDs manuell sammle?

    
sanmai 22.07.2013, 03:47
quelle

2 Antworten

3

Obwohl Antwort gegeben und akzeptiert wird, würde ich einen automatischeren Weg vorschlagen, dies zu tun (aber es wird nur funktionieren, wenn Sie Ihre master nicht mit feature zusammenführen):

Angesichts der folgenden Geschichte:

%Vor%

Grundsätzlich möchten wir git log B..feature ausführen.

%Vor%

git log --format='%H' feature..master | tail -1 findet das Commit für das master , das direkt nach der Erstellung von feature branch erstellt wurde - das ist C

Und der Vorgänger von C - B ist auch der Vorgänger des ersten Commits H von feature branch.

Dann zeigt xargs -I '{}' git log '{}'^..feature (also git log B..feature ) nur die Commits an, die von feature aus erreichbar sind, aber nicht von B .

    
Max K 22.07.2013, 06:51
quelle
6

Wenn Sie den Startpunkt der spezifischen Verzweigung, z. B. SHA1 , erhalten, versuchen Sie Folgendes:

%Vor%     
yuwang 22.07.2013 03:55
quelle

Tags und Links