Как "git pull" делается с корзиной git2-rs Rust? - PullRequest
0 голосов
/ 09 января 2019

Я использую git2-rs для реализации некоторых стандартных функций git в приложении Rust. Я читал о внутренностях git и понимаю, что на высоком уровне «git pull» - это «git fetch», за которым следует «git merge», но я все еще не могу понять, как заставить его работать с git2-rs. Здесь обсуждается проблема здесь , где принято решение, что пример git2-rs "git pull" был бы хорош, но он так и не был создан. В этом обсуждении есть пример полной перезагрузки, но я хочу избежать перезаписи локальных изменений (таким образом, слияния). Мне не удалось найти пример ни в одной другой кодовой базе, которая также использует git2-rs.

Пример "git reset" здесь показывает, как получить OID после выборки, я думаю, но функция слияния принимает AnnotatedCommit , и я не уверен, как конвертировать между двумя, или даже если это правильное направление.

...