libgit2/src
Russell Belfer a1683f28ce More tests and bug fixes for status with rename
This changes the behavior of the status RENAMED flags so that they
will be combined with the MODIFIED flags if appropriate.  If a file
is modified in the index and also renamed, then the status code
will have both the GIT_STATUS_INDEX_MODIFIED and INDEX_RENAMED bits
set.  If it is renamed but the OID has not changed, then just the
GIT_STATUS_INDEX_RENAMED bit will be set.  Similarly, the flags
GIT_STATUS_WT_MODIFIED and GIT_STATUS_WT_RENAMED can both be set
independently of one another.

This fixes a serious bug where the check for unmodified files that
was done at data load time could end up erasing the RENAMED state
of a file that was renamed with no changes.

Lastly, this contains a bunch of new tests for status with renames,
including tests where the only rename changes are case changes.
The expected results of these tests have to vary by whether the
platform uses a case sensitive filesystem or not, so the expected
data covers those platform differences separately.
2013-06-17 10:03:49 -07:00
..
amiga Added missing curly brackets and fixed compiler warnings. 2013-01-10 09:16:14 +01:00
hash Unify whitespaces to tabs 2013-05-15 20:26:55 +08:00
transports cred: deploy git__memzero to clear memory holding a password 2013-06-17 15:42:34 +02:00
unix Add missing prototype for p_realpath(). 2013-04-22 00:13:35 +02:00
win32 cmake: Add option to specify the name of the binary 2013-06-13 10:12:44 +02:00
xdiff Merge branch 'new-error-handling' into development 2012-05-02 15:59:02 -07:00
array.h Improvements to git_array 2013-06-12 13:46:44 -07:00
attr_file.c allow (ignore) bare slash in gitignore 2013-05-29 16:26:25 -05:00
attr_file.h Unify whitespaces to tabs 2013-05-15 20:26:55 +08:00
attr.c Add ~ expansion to global attributes and excludes 2013-05-24 11:09:04 -07:00
attr.h Implement global/system file search paths 2013-03-15 16:39:00 -07:00
attrcache.h Add ~ expansion to global attributes and excludes 2013-05-24 11:09:04 -07:00
blob.c Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
blob.h Simplify object table parse functions 2013-04-22 16:52:06 +02:00
branch.c branch: More obvious semantics in foreach 2013-06-17 18:48:02 +02:00
branch.h branch: rename 'tracking' to 'upstream' 2013-03-30 15:45:57 +01:00
bswap.h update copyrights 2013-01-08 17:31:27 -06:00
buf_text.c Move crlf conversion into buf_text 2013-03-25 14:20:07 -07:00
buf_text.h Move crlf conversion into buf_text 2013-03-25 14:20:07 -07:00
buffer.c update copyrights 2013-01-08 17:31:27 -06:00
buffer.h Add const to some buffer functions 2013-03-06 16:44:53 -08:00
cache.c util: It's called memzero 2013-06-12 21:10:33 +02:00
cache.h git_atomic_ssize for 64-bit atomics only on 64-bit platforms 2013-04-25 12:40:33 -05:00
cc-compat.h Fix gen_pktline format specifier for Win32 2013-01-22 09:25:15 -05:00
checkout.c Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
checkout.h update copyrights 2013-01-08 17:31:27 -06:00
clone.c Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
commit_list.c Use git_odb_object_data/_size whereever possible 2013-04-22 16:50:51 +02:00
commit_list.h update copyrights 2013-01-08 17:31:27 -06:00
commit.c Add cat-file example and increase const use in API 2013-05-16 10:38:27 -07:00
commit.h Simplify object table parse functions 2013-04-22 16:52:06 +02:00
common.h Add git_has_win32_version helper 2013-03-31 22:22:33 -04:00
compress.c update copyrights 2013-01-08 17:31:27 -06:00
compress.h update copyrights 2013-01-08 17:31:27 -06:00
config_cache.c Add configs to repo config cache 2013-04-23 12:57:30 -07:00
config_file.c Typedef git_config_level_t and use it everywhere 2013-05-24 10:35:58 -07:00
config_file.h Implement config key validation rules 2013-01-29 12:15:18 -08:00
config.c util: It's called memzero 2013-06-12 21:10:33 +02:00
config.h repo: unconditionally create a global config backend 2013-05-07 21:42:56 +02:00
crlf.c Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
date.c Unify whitespaces to tabs 2013-05-15 20:26:55 +08:00
delta-apply.c update copyrights 2013-01-08 17:31:27 -06:00
delta-apply.h update copyrights 2013-01-08 17:31:27 -06:00
delta.c Fixing unwrapped calloc 2013-05-27 16:45:22 -07:00
delta.h Fix warnings on Win64 build 2012-11-27 13:18:29 -08:00
diff_driver.c Fix Windows warnings 2013-06-12 15:21:21 -07:00
diff_driver.h Fix Windows warnings 2013-06-12 15:21:21 -07:00
diff_file.c Fix diff header naming issues 2013-06-12 14:18:09 -07:00
diff_file.h Fix diff header naming issues 2013-06-12 14:18:09 -07:00
diff_patch.c More tests and bug fixes for status with rename 2013-06-17 10:03:49 -07:00
diff_patch.h Fix diff header naming issues 2013-06-12 14:18:09 -07:00
diff_print.c More tests and bug fixes for status with rename 2013-06-17 10:03:49 -07:00
diff_tform.c More tests and bug fixes for status with rename 2013-06-17 10:03:49 -07:00
diff_xdiff.c Fix diff header naming issues 2013-06-12 14:18:09 -07:00
diff_xdiff.h Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
diff.c Always do tree to index diffs case sensitively 2013-06-17 10:03:49 -07:00
diff.h More tests and bug fixes for status with rename 2013-06-17 10:03:49 -07:00
errors.c Fix valgrind issues (and mmap fallback for diff) 2013-03-14 13:50:54 -07:00
fetch.c Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
fetch.h update copyrights 2013-01-08 17:31:27 -06:00
fetchhead.c immutable references and a pluggable ref database 2013-03-07 11:01:52 -06:00
fetchhead.h update copyrights 2013-01-08 17:31:27 -06:00
filebuf.c update copyrights 2013-01-08 17:31:27 -06:00
filebuf.h update copyrights 2013-01-08 17:31:27 -06:00
fileops.c fileops: fix invalid read 2013-06-14 20:01:35 +02:00
fileops.h Add more diff rename detection tests 2013-05-20 13:41:39 -07:00
filter.c Several warnings detected by static code analyzer fixed 2013-03-18 03:30:26 +04:00
filter.h Move crlf conversion into buf_text 2013-03-25 14:20:07 -07:00
fnmatch.c update copyrights 2013-01-08 17:31:27 -06:00
fnmatch.h update copyrights 2013-01-08 17:31:27 -06:00
global.c Mutex init can fail 2013-05-31 14:13:11 -07:00
global.h Add git__compare_and_swap and use it 2013-04-22 16:52:07 +02:00
graph.c graph: make the ahead-behind docs clearer 2013-03-22 20:27:59 +01:00
hash.c update copyrights 2013-01-08 17:31:27 -06:00
hash.h Revert "hash: remove git_hash_init from internal api" 2013-02-26 01:08:34 +01:00
hashsig.c Fix trailing whitespaces 2013-05-15 22:41:30 +02:00
hashsig.h Refine pluggable similarity API 2013-02-20 15:09:41 -08:00
ignore.c Use config cache where possible 2013-04-23 12:57:30 -07:00
ignore.h Use config cache where possible 2013-04-23 12:57:30 -07:00
index.c Make index_insert keep existing case 2013-06-17 10:03:49 -07:00
index.h introduce git_conflict_iterator 2013-05-17 16:10:48 -05:00
indexer.c calloc() to initialize memory 2013-05-16 21:11:38 +08:00
iterator.c Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
iterator.h Make iterators use GIT_ITEROVER & smart advance 2013-05-31 12:18:43 -07:00
khash.h Isolate khash inlines from global namespace 2012-07-12 11:49:15 -07:00
map.h update copyrights 2013-01-08 17:31:27 -06:00
merge_file.c Fix trailing whitespaces 2013-05-15 22:41:30 +02:00
merge_file.h Fix trailing whitespaces 2013-05-15 22:41:30 +02:00
merge.c Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
merge.h merge setup 2013-05-17 08:26:24 -05:00
message.c update copyrights 2013-01-08 17:31:27 -06:00
message.h update copyrights 2013-01-08 17:31:27 -06:00
mwindow.c Further threading fixes 2013-04-22 16:52:07 +02:00
mwindow.h update copyrights 2013-01-08 17:31:27 -06:00
netops.c Merge pull request #1298 from ben/user-at 2013-02-04 14:49:28 -08:00
netops.h Enhance url parsing to include passwords 2013-01-31 14:04:21 -08:00
notes.c Make iterators use GIT_ITEROVER & smart advance 2013-05-31 12:18:43 -07:00
notes.h fixed minor issues with new note iterator 2013-03-06 22:36:19 +01:00
object_api.c object: haha 2013-04-30 13:19:02 +02:00
object.c Fix broken build when MSVC SDL checks is enabled 2013-05-11 20:13:26 +08:00
object.h object: Explicitly define helper API methods for all obj types 2013-04-30 13:13:38 +02:00
odb_loose.c Move odb_backend implementors stuff into git2/sys 2013-04-21 11:50:55 -07:00
odb_pack.c Consolidate packfile allocation further 2013-04-22 16:52:07 +02:00
odb.c util: It's called memzero 2013-06-12 21:10:33 +02:00
odb.h Add callback to git_objects_table 2013-04-22 16:51:40 +02:00
offmap.h pack: introduce a delta base cache 2013-01-11 16:55:37 +01:00
oid.c Merge pull request #1595 from arrbee/even-more-rename-fixes 2013-05-24 01:13:48 -07:00
oid.h Add new src/oid.h 2013-04-29 18:15:43 -07:00
oidmap.h Add callback to git_objects_table 2013-04-22 16:51:40 +02:00
pack-objects.c Mutex init can fail 2013-05-31 14:13:11 -07:00
pack-objects.h update copyrights 2013-01-08 17:31:27 -06:00
pack.c Mutex init can fail 2013-05-31 14:13:11 -07:00
pack.h Consolidate packfile allocation further 2013-04-22 16:52:07 +02:00
path.c Three submodule status bug fixes 2013-03-18 17:24:13 -07:00
path.h Improved tree iterator internals 2013-03-14 13:40:15 -07:00
pathspec.c Fix trailing whitespaces 2013-05-15 22:41:30 +02:00
pathspec.h Notify '*' pathspec correctly when diffing 2013-04-11 09:59:26 +02:00
pool.c allow (ignore) bare slash in gitignore 2013-05-29 16:26:25 -05:00
pool.h Improved tree iterator internals 2013-03-14 13:40:15 -07:00
posix.c Fix memory leak in p_getaddrinfo on Amiga 2013-02-15 16:01:31 -08:00
posix.h Make tree iterator handle icase equivalence 2013-03-08 16:39:57 -08:00
pqueue.c update copyrights 2013-01-08 17:31:27 -06:00
pqueue.h update copyrights 2013-01-08 17:31:27 -06:00
push.c Fix broken build when MSVC SDL checks is enabled 2013-05-11 20:13:26 +08:00
push.h Implemented push on the local transport 2013-03-11 17:32:33 -04:00
refdb_fs.c Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
refdb_fs.h immutable references and a pluggable ref database 2013-03-07 11:01:52 -06:00
refdb.c util: It's called memzero 2013-06-12 21:10:33 +02:00
refdb.h Refcounting 2013-05-30 17:19:43 +02:00
reflog.c Error messages for a couple other boundary conditions 2013-05-01 15:08:12 -07:00
reflog.h update copyrights 2013-01-08 17:31:27 -06:00
refs.c Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
refs.h refdb_fs: Traits are always surrounded by spaces 2013-05-02 17:42:09 +02:00
refspec.c refspec: add direction accessor 2013-04-30 10:55:17 +02:00
refspec.h remote: dwim the refspecs according to the remote's advertised refs 2013-04-28 18:49:51 +02:00
remote.c Fix some memory leaks 2013-06-10 14:16:56 -07:00
remote.h Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
repo_template.h Make mode handling during init more like git 2013-02-27 13:44:15 -08:00
repository.c util: It's called memzero 2013-06-12 21:10:33 +02:00
repository.h Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
reset.c Fix trailing whitespaces 2013-05-15 22:41:30 +02:00
revparse.c Fix Windows warnings 2013-06-12 15:21:21 -07:00
revwalk.c refs: remove the OID/SYMBOLIC filtering 2013-05-11 11:20:38 +02:00
revwalk.h update copyrights 2013-01-08 17:31:27 -06:00
sha1_lookup.c update copyrights 2013-01-08 17:31:27 -06:00
sha1_lookup.h update copyrights 2013-01-08 17:31:27 -06:00
signature.c Merge pull request #1642 from arrbee/diff-function-context 2013-06-12 14:52:47 -07:00
signature.h update copyrights 2013-01-08 17:31:27 -06:00
stash.c Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
status.c More tests and bug fixes for status with rename 2013-06-17 10:03:49 -07:00
status.h status access by index, providing more details to callers 2013-06-17 10:03:14 -07:00
strmap.h update copyrights 2013-01-08 17:31:27 -06:00
submodule.c Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
submodule.h update copyrights 2013-01-08 17:31:27 -06:00
tag.c What are the chances, really 2013-05-29 22:47:37 +02:00
tag.h Simplify object table parse functions 2013-04-22 16:52:06 +02:00
thread-utils.c update copyrights 2013-01-08 17:31:27 -06:00
thread-utils.h Merge remote-tracking branch 'arrbee/minor-paranoia' into development 2013-06-12 21:05:48 +02:00
trace.c Fix trailing whitespaces 2013-05-15 22:41:30 +02:00
trace.h Fix trailing whitespaces 2013-05-15 22:41:30 +02:00
transport.c Fixed compilation issues when libssh2 is missing 2013-05-07 13:56:34 -04:00
tree-cache.c update copyrights 2013-01-08 17:31:27 -06:00
tree-cache.h update copyrights 2013-01-08 17:31:27 -06:00
tree.c Reorganize diff and add basic diff driver 2013-06-10 10:10:39 -07:00
tree.h Add cat-file example and increase const use in API 2013-05-16 10:38:27 -07:00
tsort.c Sorting function cleanup and MinGW fix 2013-03-11 16:43:58 -07:00
util.c Fix some warnings 2013-06-17 10:03:48 -07:00
util.h git__strcasesort_cmp: strcasecmp sorting rules but requires strict equality 2013-06-17 10:03:15 -07:00
vector.c Update diff handling of untracked directories 2013-04-30 04:25:56 -07:00
vector.h Merge the push report into the refs to avoid a 3rd network call 2013-02-08 15:21:37 -05:00