diff options
author | Russell Belfer <rb@github.com> | 2012-10-05 15:56:57 -0700 |
---|---|---|
committer | Russell Belfer <rb@github.com> | 2012-10-09 11:59:34 -0700 |
commit | 0d64bef941928046d114c4da1acb70bd2907855e (patch) | |
tree | 4ae0ac6484c62b0a63ca44f937d67ba15f97d7f0 /include/git2/diff.h | |
parent | f3a04e0f49d0f46e578613d1c27161abc4c2bf22 (diff) | |
download | libgit2-0d64bef941928046d114c4da1acb70bd2907855e.tar.gz |
Add complex checkout test and then fix checkout
This started as a complex new test for checkout going through the
"typechanges" test repository, but that revealed numerous issues
with checkout, including:
* complete failure with submodules
* failure to create blobs with exec bits
* problems when replacing a tree with a blob because the tree
"example/" sorts after the blob "example" so the delete was
being processed after the single file blob was created
This fixes most of those problems and includes a number of other
minor changes that made it easier to do that, including improving
the TYPECHANGE support in diff/status, etc.
Diffstat (limited to 'include/git2/diff.h')
-rw-r--r-- | include/git2/diff.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/include/git2/diff.h b/include/git2/diff.h index 551e525ef..1d32d9ad2 100644 --- a/include/git2/diff.h +++ b/include/git2/diff.h @@ -56,6 +56,9 @@ GIT_BEGIN_DECL * - GIT_DIFF_DONT_SPLIT_TYPECHANGE: normally, a type change between files * will be converted into a DELETED record for the old file and an ADDED * record for the new one; this option enabled TYPECHANGE records. + * - GIT_DIFF_SKIP_BINARY_CHECK: the binary flag in the delta record will + * not be updated. This is useful if iterating over a diff without hunk + * and line callbacks and you want to avoid loading files completely. */ enum { GIT_DIFF_NORMAL = 0, @@ -73,7 +76,9 @@ enum { GIT_DIFF_DISABLE_PATHSPEC_MATCH = (1 << 11), GIT_DIFF_DELTAS_ARE_ICASE = (1 << 12), GIT_DIFF_INCLUDE_UNTRACKED_CONTENT = (1 << 13), - GIT_DIFF_DONT_SPLIT_TYPECHANGE = (1 << 14), + GIT_DIFF_SKIP_BINARY_CHECK = (1 << 14), + GIT_DIFF_INCLUDE_TYPECHANGE = (1 << 15), + GIT_DIFF_INCLUDE_TYPECHANGE_TREES = (1 << 16), }; /** |