aboutsummaryrefslogtreecommitdiffstats
path: root/diffcore-rename.c
AgeCommit message (Expand)AuthorFilesLines
2023-07-05git-compat-util: move alloc macros to git-compat-util.hCalvin Wan1-1/+0
2023-06-21object-store-ll.h: split this header out of object-store.hElijah Newren1-1/+1
2023-04-06Merge branch 'ab/remove-implicit-use-of-the-repository'Junio C Hamano1-2/+2
2023-03-28cocci: apply the "promisor-remote.h" part of "the_repository.pending"Ævar Arnfjörð Bjarmason1-2/+2
2023-02-23treewide: replace cache.h with more direct headers, where possibleElijah Newren1-1/+5
2023-02-23alloc.h: move ALLOC_GROW() functions from cache.hElijah Newren1-0/+1
2022-02-25object-file API: have hash_object_file() take "enum object_type"Ævar Arnfjörð Bjarmason1-1/+1
2021-08-24Merge branch 'en/ort-perf-batch-15'Junio C Hamano1-9/+59
2021-08-04Merge branch 'ah/plugleaks'Junio C Hamano1-3/+7
2021-07-30merge-ort: store filepairs and filespecs in our mem_poolElijah Newren1-5/+4
2021-07-30diffcore-rename, merge-ort: add wrapper functions for filepair alloc/deallocElijah Newren1-0/+41
2021-07-30diffcore-rename: use a mem_pool for exact rename detection's hashmapElijah Newren1-6/+16
2021-07-28Merge branch 'en/rename-limits-doc'Junio C Hamano1-1/+1
2021-07-26diffcore-rename: move old_dir/new_dir definition to plug leakAndrzej Hunt1-3/+7
2021-07-16Merge branch 'en/ort-perf-batch-13'Junio C Hamano1-32/+117
2021-07-16Merge branch 'en/ort-perf-batch-12'Junio C Hamano1-2/+2
2021-07-15diffcore-rename: treat a rename_limit of 0 as unlimitedElijah Newren1-1/+1
2021-06-28diffcore-rename: use a different prefetch for basename comparisonsElijah Newren1-18/+83
2021-06-28diffcore-rename: allow different missing_object_cb functionsElijah Newren1-19/+39
2021-06-14Merge branch 'en/ort-perf-batch-11'Junio C Hamano1-4/+18
2021-06-09Fix various issues found in commentsElijah Newren1-1/+1
2021-06-09diffcore-rename: avoid unnecessary strdup'ing in break_idxElijah Newren1-1/+1
2021-05-20merge-ort, diffcore-rename: employ cached renames when possibleElijah Newren1-4/+18
2021-04-16Merge branch 'en/ort-perf-batch-10'Junio C Hamano1-26/+204
2021-04-08Merge branch 'en/ort-perf-batch-9'Junio C Hamano1-11/+52
2021-03-22Merge branch 'en/ort-perf-batch-8'Junio C Hamano1-14/+435
2021-03-18diffcore-rename: determine which relevant_sources are no longer relevantElijah Newren1-1/+50
2021-03-18diffcore-rename: add computation of number of unknown renamesElijah Newren1-4/+37
2021-03-18diffcore-rename: check if we have enough renames for directories early onElijah Newren1-10/+63
2021-03-18diffcore-rename: only compute dir_rename_count for relevant directoriesElijah Newren1-5/+22
2021-03-18merge-ort: record the reason that we want a rename for a directoryElijah Newren1-1/+1
2021-03-18merge-ort, diffcore-rename: tweak dirs_removed and relevant_source typeElijah Newren1-23/+24
2021-03-18diffcore-rename: take advantage of "majority rules" to skip more renamesElijah Newren1-0/+25
2021-03-13use CALLOC_ARRAYRené Scharfe1-2/+1
2021-03-10diffcore-rename: avoid doing basename comparisons for irrelevant sourcesElijah Newren1-4/+33
2021-03-10diffcore-rename: enable filtering possible rename sourcesElijah Newren1-7/+19
2021-02-26diffcore-rename: compute dir_rename_guess from dir_rename_countsElijah Newren1-4/+41
2021-02-26diffcore-rename: limit dir_rename_counts computation to relevant dirsElijah Newren1-0/+10
2021-02-26diffcore-rename: compute dir_rename_counts in stagesElijah Newren1-40/+70
2021-02-26diffcore-rename: extend cleanup_dir_rename_info()Elijah Newren1-4/+36
2021-02-26diffcore-rename: move dir_rename_counts into dir_rename_info structElijah Newren1-11/+16
2021-02-26diffcore-rename: add function for clearing dir_rename_countElijah Newren1-0/+12
2021-02-26Move computation of dir_rename_count from merge-ort to diffcore-renameElijah Newren1-1/+137
2021-02-26diffcore-rename: add a mapping of destination names to their indicesElijah Newren1-0/+45
2021-02-26diffcore-rename: provide basic implementation of idx_possible_rename()Elijah Newren1-6/+94
2021-02-26diffcore-rename: use directory rename guided basename comparisonsElijah Newren1-8/+34
2021-02-15diffcore-rename: guide inexact rename detection based on basenamesElijah Newren1-5/+48
2021-02-15diffcore-rename: complete find_basename_matches()Elijah Newren1-3/+79
2021-02-15diffcore-rename: compute basenames of source and dest candidatesElijah Newren1-0/+63
2021-02-15diffcore-rename: filter rename_src list when possibleElijah Newren1-8/+51
2021-02-12diffcore-rename: no point trying to find a match better than exactElijah Newren1-6/+14
2021-01-23merge-ort: begin performance work; instrument with trace2_region_* callsElijah Newren1-0/+8
2021-01-04diffcore-rename: remove unnecessary duplicate entry checksElijah Newren1-23/+0
2020-12-14diffcore-rename: accelerate rename_dst setupElijah Newren1-83/+65
2020-12-14diffcore-rename: simplify and accelerate register_rename_src()Elijah Newren1-26/+13
2020-12-14diffcore-rename: reduce jumpiness in progress countersElijah Newren1-2/+3
2020-12-14diffcore-rename: simplify limit checkElijah Newren1-6/+9
2020-12-14diffcore-rename: avoid usage of global in too_many_rename_candidates()Elijah Newren1-12/+12
2020-12-14diffcore-rename: rename num_create to num_destinationsElijah Newren1-12/+13
2020-11-02hashmap: provide deallocation function namesElijah Newren1-1/+1
2020-04-07diff: restrict when prefetching occursJonathan Tan1-4/+51
2020-04-07diff: make diff_populate_filespec_options structJonathan Tan1-5/+8
2020-01-31sha1-file: pass git_hash_algo to hash_object_file()Matheus Tavares1-2/+2
2019-10-15Merge branch 'ew/hashmap'Junio C Hamano1-8/+7
2019-10-07OFFSETOF_VAR macro to simplify hashmap iteratorsEric Wong1-1/+1
2019-10-07hashmap: introduce hashmap_free_entriesEric Wong1-1/+1
2019-10-07hashmap: use *_entry APIs to wrap container_ofEric Wong1-9/+5
2019-10-07hashmap_get_next returns "struct hashmap_entry *"Eric Wong1-4/+7
2019-10-07hashmap_add takes "struct hashmap_entry *"Eric Wong1-1/+1
2019-10-07hashmap_get_next takes "const struct hashmap_entry *"Eric Wong1-1/+1
2019-10-07hashmap_entry_init takes "struct hashmap_entry *"Eric Wong1-1/+1
2019-10-02diffcore_rename(): use a stable sortJohannes Schindelin1-1/+1
2019-07-09Merge branch 'jk/oidhash'Junio C Hamano1-1/+1
2019-06-20hashmap: convert sha1hash() to oidhash()Jeff King1-1/+1
2019-06-13cleanup: fix possible overflow errors in binary search, part 2René Scharfe1-2/+2
2018-10-19Merge branch 'nd/the-index'Junio C Hamano1-13/+22
2018-09-21diff.c: reduce implicit dependency on the_indexNguyễn Thái Ngọc Duy1-13/+22
2018-08-29convert "oidcmp() != 0" to "!oideq()"Jeff King1-1/+1
2018-05-16object-store: move object access functions to object-store.hStefan Beller1-0/+1
2018-02-15Merge branch 'po/object-id'Junio C Hamano1-2/+2
2018-01-30sha1_file: convert hash_sha1_file to object_idPatryk Obara1-2/+2
2018-01-22Use MOVE_ARRAYSZEDER Gábor1-4/+4
2017-12-02diffcore-rename: make diff-tree -l0 mean -l<large>Jonathan Tan1-0/+2
2017-11-15diff: remove silent clamp of renameLimitElijah Newren1-7/+4
2017-11-15progress: fix progress meters when dealing with lots of workElijah Newren1-2/+2
2017-11-01diff: make struct diff_flags members lowercaseBrandon Williams1-3/+3
2017-11-01diff: remove DIFF_OPT_TST macroBrandon Williams1-3/+3
2017-08-19progress: simplify "delayed" progress APIJunio C Hamano1-2/+2
2017-06-30hashmap.h: compare function has access to a data fieldStefan Beller1-1/+1
2017-06-24Merge branch 'ab/free-and-null'Junio C Hamano1-4/+2
2017-06-16coccinelle: make use of the "type" FREE_AND_NULL() ruleÆvar Arnfjörð Bjarmason1-4/+2
2017-06-05diffcore-rename: use is_empty_blob_oidBrandon Williams1-2/+2
2017-06-02diff: convert fill_filespec to struct object_idBrandon Williams1-1/+1
2016-11-17Merge branch 'tk/diffcore-delta-remove-unused'Junio C Hamano1-4/+0
2016-11-14diffcore-delta: remove unused parameter to diffcore_count_changes()Tobias Klauser1-4/+0
2016-09-29use QSORTRené Scharfe1-1/+1
2016-08-01pass constants as first argument to st_mult()René Scharfe1-1/+1
2016-06-28diff: rename struct diff_filespec's sha1_valid memberbrian m. carlson1-2/+2
2016-06-28diff: convert struct diff_filespec to struct object_idbrian m. carlson1-6/+8
2016-04-29Merge branch 'sg/diff-multiple-identical-renames' into maintJunio C Hamano1-2/+4
2016-04-13Merge branch 'sg/diff-multiple-identical-renames'Junio C Hamano1-2/+4
2016-03-30diffcore: fix iteration order of identical files during rename detectionSZEDER Gábor1-2/+4
2016-02-22use st_add and st_mult for allocation size computationJeff King1-1/+1
2015-03-10Merge branch 'jk/diffcore-rename-duplicate'Junio C Hamano1-13/+31
2015-02-27diffcore-rename: avoid processing duplicate destinationsJeff King1-2/+6
2015-02-27diffcore-rename: split locate_rename_dst into two functionsJeff King1-12/+26
2014-08-18diff.c: allow to pass more flags to diff_populate_filespecNguyễn Thái Ngọc Duy1-2/+4
2014-07-07hashmap: add simplified hashmap_get_from_hash() APIKarsten Blees1-4/+3
2014-07-07hashmap: factor out getting a hash code from a SHA1Karsten Blees1-3/+1
2014-03-18Merge branch 'dd/use-alloc-grow'Junio C Hamano1-10/+2
2014-03-14Merge branch 'nd/i18n-progress'Junio C Hamano1-1/+1
2014-03-03diffcore-rename.c: use ALLOC_GROW()Dmitry S. Dolzhenko1-10/+2
2014-02-24i18n: mark all progress lines for translationNguyễn Thái Ngọc Duy1-1/+1
2013-11-18diffcore-rename.c: use new hash map implementationKarsten Blees1-35/+13
2013-11-18diffcore-rename.c: simplify finding exact renamesKarsten Blees1-55/+20
2013-11-18diffcore-rename.c: move code around to prepare for the next patchKarsten Blees1-49/+49
2013-03-16Preallocate hash tables when the number of inserts are known in advanceNguyễn Thái Ngọc Duy1-0/+1
2012-08-27Merge branch 'jk/maint-null-in-trees'Junio C Hamano1-1/+1
2012-07-29diff: do not use null sha1 as a sentinel valueJeff King1-1/+1
2012-03-23teach diffcore-rename to optionally ignore empty contentJeff King1-0/+6
2011-05-02Merge branch 'mz/maint-rename-unmerged'Junio C Hamano1-2/+5
2011-04-29diffcore-rename.c: avoid set-but-not-used warningJim Meyering1-2/+1
2011-03-23diffcore-rename: don't consider unmerged path as sourceMartin von Zweigbergk1-2/+5
2011-03-22diffcore-rename: fall back to -C when -C -C busts the rename limitJunio C Hamano1-2/+36
2011-03-22diffcore-rename: record filepair for rename srcJunio C Hamano1-11/+12
2011-03-22diffcore-rename: refactor "too many candidates" logicJunio C Hamano1-18/+29
2011-03-19Merge branch 'jk/merge-rename-ux'Junio C Hamano1-2/+13
2011-02-21add inexact rename detection progress infrastructureJeff King1-0/+10
2011-02-21merge: improve inexact rename limit warningJeff King1-2/+3
2011-02-18diffcore-rename: improve estimate_similarity() heuristicsLinus Torvalds1-1/+1
2011-02-18diffcore-rename: properly honor the difference between -M and -CLinus Torvalds1-27/+26
2011-02-18for_each_hash: allow passing a 'void *data' pointer to callbackLinus Torvalds1-6/+8
2010-05-07Add a macro DIFF_QUEUE_CLEAR.Bo Yang1-2/+1
2009-11-20diffcore-rename: reduce memory footprint by freeing blob data earlyJunio C Hamano1-2/+5
2009-04-22Fix typos / spelling in commentsMike Ralphson1-1/+1
2009-01-21Rename detection: Avoid repeated filespec populationBjörn Steinbrink1-2/+7
2008-10-28Add file delete/create info when we overflow rename_limitLinus Torvalds1-1/+1
2008-05-03diff: make "too many files" rename warning optionalJeff King1-1/+2
2008-04-09Merge branch 'jc/rename'Junio C Hamano1-22/+58
2008-03-01rename: warn user when we have turned off rename detectionJeff King1-3/+4
2008-02-13Optimize rename detection for a huge diffJunio C Hamano1-22/+58
2007-11-30Fix a pathological case in git detecting proper renamesLinus Torvalds1-0/+13
2007-11-30Fix a pathological case in git detecting proper renamesLinus Torvalds1-9/+16
2007-10-26Do the fuzzy rename detection limits with the exact renames removedLinus Torvalds1-14/+18
2007-10-26Fix ugly magic special case in exact rename detectionLinus Torvalds1-13/+14
2007-10-26Do exact rename detection regardless of rename limitsLinus Torvalds1-6/+6
2007-10-26Do linear-time/space rename logic for exact renamesLinus Torvalds1-63/+148
2007-10-26copy vs rename detection: avoid unnecessary O(n*m) loopsLinus Torvalds1-51/+17
2007-10-26Ref-count the filespecs used by diffcoreLinus Torvalds1-10/+6
2007-10-26Split out "exact content match" phase of rename detectionLinus Torvalds1-34/+56
2007-10-02rename diff_free_filespec_data_large() to diff_free_filespec_blob()Junio C Hamano1-2/+2
2007-10-02diffcore-rename: cache file deltasJeff King1-3/+4
2007-09-14Fix the rename detection limit checkingLinus Torvalds1-2/+17
2007-07-02Merge branch 'jc/diffcore'Junio C Hamano1-2/+1
2007-06-30diffcore_count_changes: pass diffcore_filespecJunio C Hamano1-2/+1
2007-06-24diffcore-rename: don't change similarity index based on basename equalityRené Scharfe1-4/+7
2007-06-22diffcore-rename: favour identical basenamesJohannes Schindelin1-1/+32
2007-05-07diff -M: release the preimage candidate blobs after rename detection.Junio C Hamano1-0/+1
2007-03-07Cast 64 bit off_t to 32 bit size_tShawn O. Pearce1-3/+4
2006-12-14Bypass expensive content comparsion during rename detection.Shawn O. Pearce1-0/+2
2006-11-04git-pickaxe: rename detection optimizationJunio C Hamano1-1/+5
2006-08-17Do not use memcmp(sha1_1, sha1_2, 20) with hardcoded length.David Rientjes1-1/+1
2006-08-03diff.c: do not use pathname comparison to tell renamesJunio C Hamano1-0/+1
2006-07-06diffcore-rename: try matching up renames without populating filespec first.Junio C Hamano1-11/+22
2006-04-08diffcore-rename: fix merging back a broken pair.Junio C Hamano1-4/+10
2006-03-12Fix up diffcore-rename scoringLinus Torvalds1-7/+5
2006-03-12diffcore-delta: make the hash a bit denser.Junio C Hamano1-2/+2
2006-03-12diffcore-rename: somewhat optimized.Junio C Hamano1-0/+3
2006-03-02diffcore-rename: similarity estimator fix.Junio C Hamano1-12/+8
2006-02-28diffcore-rename: split out the delta counting code.Junio C Hamano1-23/+5
2006-02-22diffcore-rename: plug memory leak.Junio C Hamano1-1/+3
2005-12-26short circuit out of a few places where we would allocate zero bytesEric Wong1-1/+1
2005-11-21rename detection with -M100 means "exact renames only".Junio C Hamano1-0/+3
2005-11-15diff: make default rename detection limit configurable.Junio C Hamano1-1/+1
2005-09-24Diff: -l<num> to limit rename/copy detection.Junio C Hamano1-2/+6
2005-09-15Plug diff leaks.Junio C Hamano1-24/+32
2005-09-10Fix copy marking from diffcore-rename.Junio C Hamano1-4/+36
2005-06-28[PATCH] Use enhanced diff_delta() in the similarity estimator.Junio C Hamano1-1/+6
2005-06-25Add a "max_size" parameter to diff_delta()Linus Torvalds1-1/+1
2005-06-12[PATCH] Fix rename/copy when dealing with temporarily broken pairs.Junio C Hamano1-2/+8
2005-06-03[PATCH] diff: Clean up diff_scoreopt_parse().Junio C Hamano1-18/+0
2005-06-03[PATCH] Tweak count-delta interfaceJunio C Hamano1-4/+11
2005-05-30[PATCH] Add -B flag to diff-* brothers.Junio C Hamano1-13/+32
2005-05-30[PATCH] diff: fix the culling of unneeded delete record.Junio C Hamano1-11/+33
2005-05-30[PATCH] diff: code clean-up and removal of rename hack.Junio C Hamano1-1/+1
2005-05-29[PATCH] Optimize diff-tree -[CM] --stdinJunio C Hamano1-5/+14
2005-05-29[PATCH] Fix the way diffcore-rename records unremoved source.Junio C Hamano1-39/+24
2005-05-29[PATCH] Remove unused rank field from diff_core structure.Junio C Hamano1-1/+0
2005-05-29[PATCH] Introduce diff_free_filepair() funcion.Junio C Hamano1-5/+2
2005-05-29[PATCH] Fix math thinko in similarity estimator.Junio C Hamano1-1/+1
2005-05-24[PATCH] Update rename/copy similarity estimator.Junio C Hamano1-5/+11
2005-05-24[PATCH] Redo rename/copy detection logic.Junio C Hamano1-204/+181
2005-05-23[PATCH] Fix diff-pruning logic which was running prune too early.Junio C Hamano1-23/+2
2005-05-23[PATCH] Rename/copy detection fix.Junio C Hamano1-75/+37
2005-05-23[PATCH] Be careful with symlinks when detecting renames and copies.Junio C Hamano1-10/+14
2005-05-22[PATCH] Diffcore updates.Junio C Hamano1-2/+19
2005-05-22[PATCH] Add the code to set default minimum score back in.Junio C Hamano1-0/+2
2005-05-22[PATCH] Fix tweak in similarity estimator.Junio C Hamano1-2/+2
2005-05-21[PATCH] The diff-raw format updates.Junio C Hamano1-10/+10
2005-05-21[PATCH] Prepare diffcore interface for diff-tree header supression.Junio C Hamano1-2/+2