mirror of
https://git.proxmox.com/git/libgit2
synced 2025-12-28 08:10:44 +00:00
This implements the basis for diff rename and copy detection, although it is based on simple SHA comparison right now instead of using a matching algortihm. Just as `git_diff_merge` can be used as a post-pass on diffs to emulate certain command line behaviors, there is a new API `git_diff_detect` which will update a diff list in-place, adjusting some deltas to RENAMED or COPIED state (and also, eventually, splitting MODIFIED deltas where the change is too large into DELETED/ADDED pairs). This also adds a new test repo that will hold rename/copy/split scenarios. Right now, it just has exact-match rename and copy, but the tests are written to use tree diffs, so we should be able to add new test scenarios easily without breaking tests. |
||
|---|---|---|
| .. | ||
| attr | ||
| buf | ||
| checkout | ||
| clone | ||
| commit | ||
| config | ||
| core | ||
| date | ||
| diff | ||
| index | ||
| network | ||
| notes | ||
| object | ||
| odb | ||
| pack | ||
| refs | ||
| repo | ||
| reset | ||
| resources | ||
| revwalk | ||
| status | ||
| submodule | ||
| threads | ||
| clar | ||
| clar_helpers.c | ||
| clar_libgit2.h | ||
| README.md | ||
| valgrind-supp-mac.txt | ||
Writing Clar tests for libgit2
For information on the Clar testing framework and a detailed introduction please visit:
-
Write your modules and tests. Use good, meaningful names.
-
Make sure you actually build the tests by setting:
cmake -DBUILD_CLAR=ON build/ -
Test:
./build/libgit2_clar -
Make sure everything is fine.
-
Send your pull request. That's it.