2017-09-27 2 views
0

Ich versuche, meinen HEAD mit einem Remote-Zweig zu vergleichen, indem ich einen Vergleich von Baum zu Baum durchführe. Um den Remote-Baum zu erhalten, habe ich zuerst versucht, git_tree_lookup zu verwenden, indem ich das entfernte Objekt übergeben habe, das durch git_revparse_single erhalten wurde. Dies schlägt fehl, auch wenn ich die Fernbedienung vorher verbinde und abrufe.
Allerdings, wenn ich nach der Überprüfung, ich den Objektzeiger auf git_commit * und git_commit_tree stattdessen statt, es gelingt und gibt mir die Remote-Struktur.
Warum funktioniert der eine Weg und der andere nicht?Richtiger Weg, um den Git-Baum eines entfernten Zweiges mit libgit2 zu erhalten

Antwort

0

Da git_revparse_single auf eine Referenz wird Ihnen eine git_commit, nicht eine git_tree. Und du kannst kein git_commit zu einem git_tree werfen.

Sie sind richtig, um den Baum von der git_commit, die Sie zurückgegeben wurden mit git_commit_tree nachschlagen.

Verwandte Themen