Ich muss alle Commits auflisten, die seit meiner letzten Veröffentlichung an die master
-Verzweigung vorgenommen wurden. Ich muss diese Funktionalität mit pygit2
implementieren. Aber die Situation ist hier ein bisschen anders.Alle Commits seit der letzten Veröffentlichung auflisten, wenn das Tag auf ein Commit in einem anderen Zweig verweist
Die Veröffentlichung ist auf dem Zweig master
machte eine tag
auf einem Commit other
Zweig verwenden. Der naive Ansatz wäre, die sha
der letzten tagged commit
zu finden und die Geschichte von der HEAD
bis zu dieser sha
nach unten zu verschieben. Aber diese tagged commit
ist nicht auf die master
Zweig in meinem Fall gemacht, es ist zu other
Zweig gemacht. Interessanterweise gibt die folgende die korrekte Ausgabe, wenn sie über master
Zweig laufen:
$ git log sometag..HEAD --oneline
Hier sometag
verweist auf die auf dem other
Zweig gemacht commit. Also, ich möchte wissen, wie ich das programmatisch implementieren könnte, wenn ich eine Liste aller Commits habe, die auf dem Zweig master
gemacht werden.
Eine Lösung, die mir in den Sinn kommt, ist die timestamp
der tagged commit
zu finden und meine Commit-Liste zu filtern. Wie macht das git log
das, irgendwelche Ideen?
Stichworte aren‘ Sie sind an Zweige gebunden und an einzelne Commits gebunden. Ein Diagramm würde hier helfen. Versuchen Sie Commits aufzulisten, die Vorfahren Ihres aktuellen Zweigs sind, die nicht Vorfahren eines bestimmten Tags sind? –
@DietrichEpp, ja das weiß ich. Ich schätze, Sie schlagen "Vorgänger" eines gegebenen Etiketts vor, anstatt "Anstichen"? – darxtrix
@DietrichEpp, Okay, realisierte ich den Titel. Behoben. – darxtrix