我试图查看diff中修改了哪些行,但是libgit2 API仅具有以下行类型:-
GIT_DIFF_LINE_ADDITION
GIT_DIFF_LINE_DELETION
如果我们要检测到修改,则需要一些解决方法。
我观察到,每当进行修改时,这些行就会按顺序删除,然后开始添加。但是这个顺序并不总是有效的。因此不确定是否可以使用正确的伪代码/算法来检测到这一点。
https://gitlab.gnome.org/gaurav1999/diferencia/merge_requests/3/diffs
我正在VALA中尝试这样做。 但是任何算法建议都可以用任何语言甚至英语提供帮助。
在这种情况下,它通过: https://gitlab.gnome.org/gaurav1999/diferencia/merge_requests/3#note_544291
在这种情况下,它会失败,也许其他情况也会发生。 https://gitlab.gnome.org/gaurav1999/diferencia/merge_requests/3#note_544294