How to get the diff of a single file with libgit2?

2019-04-30 01:33发布

问题:

Is there a function equivalent to git diff FILE in libgit2? In other words, how to efficiently retrieve the diff of a single file without having libgit2 to look at other files in the working directory?

回答1:

git diff FILE will display the changes you've made relative to the index.

This can be achieved through the use of the libgit2 git_diff_index_to_workdir() function.

This function accepts a git_diff_options structure as a parameter into which you can provide a pathspec, or a list of pathspecs, you're specifically interested in.

More information about this:

  • Documentation of this function.
  • Unit test leveraging this use case.


标签: c libgit2