Debian Package Tracker
Register | Log in
Subscribe

git

fast, scalable, distributed revision control system

Choose email to subscribe with

general
  • source: git (main)
  • version: 1:2.30.1-1
  • maintainer: Jonathan Nieder (DMD)
  • uploaders: Anders Kaseorg [DMD]
  • arch: all any
  • std-ver: 4.3.0.1
  • VCS: Git (Browse, QA)
versions [more versions can be listed by madison] [old versions available from snapshot.debian.org]
[pool directory]
  • o-o-stable: 1:2.1.4-2.1+deb8u6
  • o-o-sec: 1:2.1.4-2.1+deb8u10
  • oldstable: 1:2.11.0-3+deb9u7
  • old-sec: 1:2.11.0-3+deb9u7
  • old-bpo: 1:2.20.1-1~bpo9+1
  • stable: 1:2.20.1-2+deb10u3
  • stable-sec: 1:2.20.1-2+deb10u3
  • stable-bpo: 1:2.29.2-1~bpo10+1
  • testing: 1:2.30.0-1
  • unstable: 1:2.30.1-1
  • exp: 1:2.30.1+next.20210212-1
versioned links
  • 1:2.1.4-2.1+deb8u6: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 1:2.1.4-2.1+deb8u10: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 1:2.11.0-3+deb9u7: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 1:2.20.1-1~bpo9+1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 1:2.20.1-2+deb10u3: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 1:2.29.2-1~bpo10+1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 1:2.30.0-1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 1:2.30.1-1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
  • 1:2.30.1+next.20210212-1: [.dsc, use dget on this link to retrieve source package] [changelog] [copyright] [rules] [control]
binaries
  • git (246 bugs: 0, 106, 140, 0)
  • git-all (2 bugs: 0, 0, 2, 0)
  • git-cvs (9 bugs: 0, 4, 5, 0)
  • git-daemon-run (6 bugs: 1, 2, 3, 0)
  • git-daemon-sysvinit (7 bugs: 0, 2, 5, 0)
  • git-doc (7 bugs: 0, 1, 6, 0)
  • git-el (4 bugs: 0, 4, 0, 0)
  • git-email (16 bugs: 0, 6, 10, 0)
  • git-gui (20 bugs: 0, 11, 9, 0)
  • git-man (24 bugs: 0, 6, 18, 0)
  • git-mediawiki
  • git-svn (27 bugs: 0, 10, 17, 0)
  • gitk (27 bugs: 0, 8, 19, 0)
  • gitweb (16 bugs: 0, 7, 9, 0)
action needed
Problems while searching for a new upstream version high
uscan had problems while searching for a new upstream version:
more than one main upstream tarballs listed.
Created: 2020-06-29 Last update: 2021-02-25 15:00
Does not build reproducibly during testing normal
A package building reproducibly enables third parties to verify that the source matches the distributed binaries. It has been identified that this source package produced different results, failed to build or had other issues in a test environment. Please read about how to improve the situation!
Created: 2020-11-13 Last update: 2021-02-25 17:04
26 bugs tagged patch in the BTS normal
The BTS contains patches fixing 26 bugs (33 if counting merged bugs), consider including or untagging them.
Created: 2020-10-19 Last update: 2021-02-25 17:01
1198 new commits since last upload, is it time to release? normal
vcswatch reports that this package seems to have new commits in its VCS but has not yet updated debian/changelog. You should consider updating the Debian changelog and uploading this new version into the archive.

Here are the relevant commit logs:
commit b64abb8723cdc5fbaf525a7846b9afe2fb81be37
Merge: 416344015a f9b439d869
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   Tue Feb 16 22:03:23 2021 -0800

    Merge branch 'debian-sid' into debian-experimental
    
    * debian-sid:
      debian: new upstream point release
    
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
    Change-Id: I96d489ff3895365f42ea6a12657aa279124f056d

commit 416344015a440d5ba18bfd41237fab84faba2f82
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   Tue Feb 16 22:01:53 2021 -0800

    debian: new "next" snapshot
    
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
    Change-Id: I321496e0a60a58b63e0f05dbad501285361e5780

commit d568e7f64877d9c1eaf5bbcbf74f0a44ca0bad0e
Merge: fef60b04ea 45526154a5
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   Tue Feb 16 21:58:18 2021 -0800

    Merge branch 'next' of https://kernel.googlesource.com/pub/scm/git/git into debian-experimental
    
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
    Change-Id: Id20c31c7faf8d05f0f1fab512564663c095e15e3

commit f9b439d86969695988f9a8e1602e56d01b235b86
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   Tue Feb 16 21:55:35 2021 -0800

    debian: new upstream point release
    
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

commit e6419f4456f6300dde3e8bea957f8db17370d6b0
Merge: 1785cf1fab 773e25afc4
Author: Jonathan Nieder <jrnieder@gmail.com>
Date:   Tue Feb 16 21:54:12 2021 -0800

    Merge tag 'v2.30.1' into debian-sid
    
    Git 2.30.1
    
    Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

commit 45526154a57d15947cad7262230d0b935cedb9d3
Merge: 666a0422dc 328c109303
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:23:07 2021 -0800

    Sync with master

commit 666a0422dc797b222779bbfe19815e76a8ddb586
Merge: 76784be663 e7884b353b
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:23:01 2021 -0800

    Merge branch 'ab/test-lib' into next
    
    Test framework clean-up.
    
    * ab/test-lib:
      test-lib-functions: assert correct parameter count
      test-lib-functions: remove bug-inducing "diagnostics" helper param
      test libs: rename "diff-lib" to "lib-diff"
      t/.gitattributes: sort lines
      test-lib-functions: move function to lib-bitmap.sh
      test libs: rename gitweb-lib.sh to lib-gitweb.sh
      test libs: rename bundle helper to "lib-bundle.sh"
      test-lib-functions: remove generate_zero_bytes() wrapper
      test-lib-functions: move test_set_index_version() to its user
      test lib: change "error" to "BUG" as appropriate
      test-lib: remove check_var_migration

commit 76784be66301d0b555ae4d9594726817c02df7dc
Merge: 5e24106122 f276e2a469
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:23:01 2021 -0800

    Merge branch 'ak/config-bad-bool-error' into next
    
    The error message given when a configuration variable that is
    expected to have a boolean value has been improved.
    
    * ak/config-bad-bool-error:
      config: improve error message for boolean config

commit 5e24106122435795936de87f9c20f68e8a0a3c93
Merge: 899034efca c45dc9cf30
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:23:00 2021 -0800

    Merge branch 'ab/diff-deferred-free' into next
    
    A small memleak in "diff -I<regexp>" has been corrected.
    
    * ab/diff-deferred-free:
      diff: plug memory leak from regcomp() on {log,diff} -I
      diff: add an API for deferred freeing

commit 899034efca9cd17115a648045385846231e6c0dc
Merge: e9faad550a c809798b2a
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:23:00 2021 -0800

    Merge branch 'js/reflog-expire-stale-fix' into next
    
    "git reflog expire --stale-fix" can be used to repair the reflog by
    removing entries that refer to objects that have been pruned away,
    but was not careful to tolerate missing objects.
    
    * js/reflog-expire-stale-fix:
      reflog expire --stale-fix: be generous about missing objects

commit e9faad550a15067ca8921dc2da91953f69a63274
Merge: ffe9f2d364 c85eec7fc3
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:23:00 2021 -0800

    Merge branch 'js/commit-graph-warning' into next
    
    When certain features (e.g. grafts) used in the repository are
    incompatible with the use of the commit-graph, we used to silently
    turned commit-graph off; we now tell the user what we are doing.
    
    * js/commit-graph-warning:
      commit-graph: when incompatible with graphs, indicate why

commit ffe9f2d36492004d336eb079fea960b17c9f8004
Merge: e29227780b be8fc53e36
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:23:00 2021 -0800

    Merge branch 'ab/pager-exit-log' into next
    
    When a pager spawned by us exited, the trace log did not record its
    exit status correctly, which has been corrected.
    
    * ab/pager-exit-log:
      pager: properly log pager exit code when signalled
      run-command: add braces for "if" block in wait_or_whine()
      pager: test for exit code with and without SIGPIPE
      pager: refactor wait_for_pager() function

commit e29227780be16f8e8ba3c18f13afc7179ef268a2
Merge: f620f3cfd3 fa153c1cd7
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:23:00 2021 -0800

    Merge branch 'cm/rebase-i-updates' into next
    
    Follow-up fixes to "cm/rebase-i" topic.
    
    * cm/rebase-i-updates:
      doc/rebase -i: fix typo in the documentation of 'fixup' command
      t/t3437: fixup the test 'multiple fixup -c opens editor once'
      t/t3437: use named commits in the tests
      t/t3437: simplify and document the test helpers
      t/t3437: check the author date of fixed up commit
      t/t3437: remove the dependency of 'expected-message' file from tests
      t/t3437: fixup here-docs in the 'setup' test
      t/lib-rebase: update the documentation of FAKE_LINES
      rebase -i: clarify and fix 'fixup -c' rebase-todo help
      sequencer: rename a few functions
      sequencer: fixup the datatype of the 'flag' argument

commit f620f3cfd3e857985e9981d17e92636c43941e81
Merge: dc6e27a789 6eda9ac9e5
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:23:00 2021 -0800

    Merge branch 'ta/hash-function-transition-doc' into next
    
    Update formatting and grammar of the hash transition plan
    documentation, plus some updates.
    
    * ta/hash-function-transition-doc:
      doc: use https links
      doc hash-function-transition: move rationale upwards
      doc hash-function-transition: fix incomplete sentence
      doc hash-function-transition: use upper case consistently
      doc hash-function-transition: use SHA-1 and SHA-256 consistently
      doc hash-function-transition: fix asciidoc output

commit 328c10930387d301560f7cbcd3351cc485a13381
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:13:40 2021 -0800

    The eighth batch
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 8b25dee6155fd3816f62649da196a4f42cf5584e
Merge: 006c5f79be 5c327502db
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:21:04 2021 -0800

    Merge branch 'tb/precompose-prefix-too'
    
    When commands are started from a subdirectory, they may have to
    compare the path to the subdirectory (called prefix and found out
    from $(pwd)) with the tracked paths.  On macOS, $(pwd) and
    readdir() yield decomposed path, while the tracked paths are
    usually normalized to the precomposed form, causing mismatch.  This
    has been fixed by taking the same approach used to normalize the
    command line arguments.
    
    * tb/precompose-prefix-too:
      MacOS: precompose_argv_prefix()

commit 006c5f79be55c029d6f68ea0d5a33cb41d1b5e80
Merge: 60f8121940 27dc071b9a
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:21:04 2021 -0800

    Merge branch 'jk/complete-branch-force-delete'
    
    The command line completion (in contrib/) completed "git branch -d"
    with branch names, but "git branch -D" offered tagnames in addition,
    which has been corrected.  "git branch -M" had the same problem.
    
    * jk/complete-branch-force-delete:
      doc/git-branch: fix awkward wording for "-c"
      completion: handle other variants of "branch -m"
      completion: treat "branch -D" the same way as "branch -d"

commit 60f81219403d708ab6271f68d8e4e42a39f7459b
Merge: 3c12d0b885 ad6b5fefbd
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:21:04 2021 -0800

    Merge branch 'jv/upload-pack-filter-spec-quotefix'
    
    Fix in passing custom args from "git clone" to "upload-pack" on the
    other side.
    
    * jv/upload-pack-filter-spec-quotefix:
      t5544: clarify 'hook works with partial clone' test
      upload-pack.c: fix filter spec quoting bug

commit 3c12d0b885918fb5c6d5cb2be538639a52e1ef53
Merge: 2c873f9791 6885cd7dc5
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:21:04 2021 -0800

    Merge branch 'tb/pack-revindex-on-disk'
    
    Introduce an on-disk file to record revindex for packdata, which
    traditionally was always created on the fly and only in-core.
    
    * tb/pack-revindex-on-disk:
      t5325: check both on-disk and in-memory reverse index
      pack-revindex: ensure that on-disk reverse indexes are given precedence
      t: support GIT_TEST_WRITE_REV_INDEX
      t: prepare for GIT_TEST_WRITE_REV_INDEX
      Documentation/config/pack.txt: advertise 'pack.writeReverseIndex'
      builtin/pack-objects.c: respect 'pack.writeReverseIndex'
      builtin/index-pack.c: write reverse indexes
      builtin/index-pack.c: allow stripping arbitrary extensions
      pack-write.c: prepare to write 'pack-*.rev' files
      packfile: prepare for the existence of '*.rev' files

commit 2c873f97913994f8478a9078ff8b62e17378a0ed
Merge: f011795891 db89a82b5b
Author: Junio C Hamano <gitster@pobox.com>
Date:   Fri Feb 12 14:21:04 2021 -0800

    Merge branch 'ab/tests-various-fixup'
    
    Various test updates.
    
    * ab/tests-various-fixup:
      rm tests: actually test for SIGPIPE in SIGPIPE test
      archive tests: use a cheaper "zipinfo -h" invocation to get header
      upload-pack tests: avoid a non-zero "grep" exit status
      git-svn tests: rewrite brittle tests to use "--[no-]merges".
      git svn mergeinfo tests: refactor "test -z" to use test_must_be_empty
      git svn mergeinfo tests: modernize redirection & quoting style
      cache-tree tests: explicitly test HEAD and index differences
      cache-tree tests: use a sub-shell with less indirection
      cache-tree tests: remove unused $2 parameter
      cache-tree tests: refactor for modern test style

commit fef60b04ea36be8c4a67f76655418949922cf265
Author: Emily Shaffer <emilyshaffer@google.com>
Date:   Fri Feb 12 12:32:28 2021 -0800

    debian: new "next" snapshot
    
    Signed-off-by: Emily Shaffer <emilyshaffer@google.com>
    Change-Id: I476107403ae84a8d4c6f0e0a86231c4581bf3f03

commit 02051435396322a4fb8b762cbf5fa85b1827682f
Merge: 8a9a26aae1 dc6e27a789
Author: Emily Shaffer <emilyshaffer@google.com>
Date:   Fri Feb 12 12:31:55 2021 -0800

    Merge branch 'next' into debian-experimental
    
    Signed-off-by: Emily Shaffer <emilyshaffer@google.com>
    Change-Id: Ib3f72dd1591040c99990d9f054344df8622f4e05

commit e7884b353b7f3b61c2b8ace086bc7e030946e270
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Fri Feb 12 14:29:42 2021 +0100

    test-lib-functions: assert correct parameter count
    
    Add assertions of the correct parameter count of various functions, in
    particularly the wrappers for the shell "test" built-in.
    
    In an earlier commit we fixed a bug with an incorrect number of
    arguments being passed to "test_path_is_{file,missing}". Let's also
    guard other similar functions from the same sort of misuse.
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 45a2686441b0ea53ad9acef8b01dad2efdd98a90
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Fri Feb 12 14:29:41 2021 +0100

    test-lib-functions: remove bug-inducing "diagnostics" helper param
    
    Remove the optional "diagnostics" parameter of the
    test_path_is_{file,dir,missing} functions.
    
    We have a lot of uses of these functions, but the only legitimate use
    of the diagnostics parameter is from when the functions themselves
    were introduced in 2caf20c52b7 (test-lib: user-friendly alternatives
    to test [-d|-f|-e], 2010-08-10).
    
    But as the the rest of this diff demonstrates its presence did more to
    silently introduce bugs in our tests. Fix such bugs in the tests added
    in ae4e89e549b (gc: add --keep-largest-pack option, 2018-04-15), and
    c04ba51739a (t6046: testcases checking whether updates can be skipped
    in a merge, 2018-04-19).
    
    Let's also assert that those functions are called with exactly one
    parameter, a follow-up commit will add similar asserts to other
    functions in test-lib-functions.sh that we didn't have existing misuse
    of.
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit ebd73f50c680ca0984aae18fad7b821464ed2411
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Fri Feb 12 14:29:40 2021 +0100

    test libs: rename "diff-lib" to "lib-diff"
    
    Rename the "diff-lib" to "lib-diff". With this rename and preceding
    commits there is no remaining t/*lib* which doesn't follow the
    convention of being called t/lib-*.
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit dc6e27a789e4507528580b97835b81cc33f5f1b5
Merge: 391cc85104 f011795891
Author: Junio C Hamano <gitster@pobox.com>
Date:   Thu Feb 11 14:01:51 2021 -0800

    Sync with master

commit 391cc851044a540dbbdb5eb56069315034352093
Merge: 2490918be8 9b27b49240
Author: Junio C Hamano <gitster@pobox.com>
Date:   Thu Feb 11 14:01:27 2021 -0800

    Merge branch 'bc/signed-objects-with-both-hashes' into next
    
    Signed commits and tags now allow verification of objects, whose
    two object names (one in SHA-1, the other in SHA-256) are both
    signed.
    
    * bc/signed-objects-with-both-hashes:
      gpg-interface: remove other signature headers before verifying
      ref-filter: hoist signature parsing
      commit: allow parsing arbitrary buffers with headers
      gpg-interface: improve interface for parsing tags
      commit: ignore additional signatures when parsing signed commits
      ref-filter: switch some uses of unsigned long to size_t

commit 2490918be8c661a2810da8f5d2861d936b8566d0
Merge: 6fb701f287 a5cdca4520
Author: Junio C Hamano <gitster@pobox.com>
Date:   Thu Feb 11 14:01:27 2021 -0800

    Merge branch 'ew/rev-parse-since-test' into next
    
    Test to make sure "git rev-parse one-thing one-thing" gives
    the same thing twice (when one-thing is --since=X).
    
    * ew/rev-parse-since-test:
      t1500: ensure current --since= behavior remains

commit 6fb701f287ba4c0ec1636d537702b00f6816974e
Merge: 36f56bc9ec 16950f8384
Author: Junio C Hamano <gitster@pobox.com>
Date:   Thu Feb 11 14:01:27 2021 -0800

    Merge branch 'jk/rev-list-disk-usage' into next
    
    "git rev-list" command learned "--disk-usage" option.
    
    * jk/rev-list-disk-usage:
      rev-list: add --disk-usage option for calculating disk usage
      t: add --no-tag option to test_commit

commit 36f56bc9ec3e9a868b33837eb8623700ad27d132
Merge: bc5c67f70f acc1c4d5d4
Author: Junio C Hamano <gitster@pobox.com>
Date:   Thu Feb 11 14:01:27 2021 -0800

    Merge branch 'ds/maintenance-pack-refs' into next
    
    "git maintenance" tool learned a new "pack-refs" maintenance task.
    
    * ds/maintenance-pack-refs:
      maintenance: incremental strategy runs pack-refs weekly
      maintenance: add pack-refs task

commit bc5c67f70f2e16d209b028bd591fa5fe4dceb8ec
Merge: ae1cde1380 822ee894f6
Author: Junio C Hamano <gitster@pobox.com>
Date:   Thu Feb 11 14:01:26 2021 -0800

    Merge branch 'jx/t5411-unique-filenames' into next
    
    Avoid individual tests in t5411 from getting affected by each other
    by forcing them to use separate output files during the test.
    
    * jx/t5411-unique-filenames:
      t5411: refactor check of refs using test_cmp_refs
      t5411: use different out file to prevent overwriting

commit ae1cde13806c82e1aa2461e61f5a8813ec93d3fc
Merge: 210ff6ea34 3e885f0277
Author: Junio C Hamano <gitster@pobox.com>
Date:   Thu Feb 11 14:01:26 2021 -0800

    Merge branch 'dl/stash-cleanup' into next
    
    Documentation, code and test clean-up around "git stash".
    
    * dl/stash-cleanup:
      stash: declare ref_stash as an array
      t3905: use test_cmp() to check file contents
      t3905: replace test -s with test_file_not_empty
      t3905: remove nested git in command substitution
      t3905: move all commands into test cases
      t3905: remove spaces after redirect operators
      git-stash.txt: be explicit about subcommand options

commit f0117958910fbc734457a83a9f8ecc3c62463417
Merge: d3a035b055 59ec22464f
Author: Junio C Hamano <gitster@pobox.com>
Date:   Thu Feb 11 13:58:52 2021 -0800

    Sync with maint

commit d3a035b055c81634ce99ab5fa5476a52d33029fe
Merge: a21e27ef6b 557ac0350d
Author: Junio C Hamano <gitster@pobox.com>
Date:   Thu Feb 11 13:58:43 2021 -0800

    Merge branch 'en/merge-ort-perf'
    
    The "ort" merge strategy.
    
    * en/merge-ort-perf:
      merge-ort: begin performance work; instrument with trace2_region_* calls
      merge-ort: ignore the directory rename split conflict for now
      merge-ort: fix massive leak

commit a21e27ef6bd72e38ec96a2b1a259eb48759c1d48
Merge: c6102b7585 203c872c4f
Author: Junio C Hamano <gitster@pobox.com>
Date:   Thu Feb 11 13:58:43 2021 -0800

    Merge branch 'en/ort-directory-rename'
    
    ORT merge strategy learns to infer "renamed directory" while
    merging.
    
    * en/ort-directory-rename:
      merge-ort: fix a directory rename detection bug
      merge-ort: process_renames() now needs more defensiveness
      merge-ort: implement apply_directory_rename_modifications()
      merge-ort: add a new toplevel_dir field
      merge-ort: implement handle_path_level_conflicts()
      merge-ort: implement check_for_directory_rename()
      merge-ort: implement apply_dir_rename() and check_dir_renamed()
      merge-ort: implement compute_collisions()
      merge-ort: modify collect_renames() for directory rename handling
      merge-ort: implement handle_directory_level_conflicts()
      merge-ort: implement compute_rename_counts()
      merge-ort: copy get_renamed_dir_portion() from merge-recursive.c
      merge-ort: add outline of get_provisional_directory_renames()
      merge-ort: add outline for computing directory renames
      merge-ort: collect which directories are removed in dirs_removed
      merge-ort: initialize and free new directory rename data structures
      merge-ort: add new data structures for directory rename detection

commit 59ec22464f6c2b170b05f287e00740ea2288fe5c
Merge: 773e25afc4 d051ed77ee
Author: Junio C Hamano <gitster@pobox.com>
Date:   Thu Feb 11 13:57:36 2021 -0800

    Merge branch 'tb/ci-run-cocci-with-18.04' into maint
    
    * tb/ci-run-cocci-with-18.04:
      .github/workflows/main.yml: run static-analysis on bionic

commit f276e2a469430999ff7e3735ea7b41508ed1abd8
Author: Andrew Klotz <agc.klotz@gmail.com>
Date:   Thu Feb 11 20:30:53 2021 +0000

    config: improve error message for boolean config
    
    Currently invalid boolean config values return messages about 'bad
    numeric', which is slightly misleading when the error was due to a
    boolean value. We can improve the developer experience by returning a
    boolean error message when we know the value is neither a bool text or
    int.
    
    before with an invalid boolean value of `non-boolean`, its unclear what
    numeric is referring to:
      fatal: bad numeric config value 'non-boolean' for 'commit.gpgsign': invalid unit
    
    now the error message mentions `non-boolean` is a bad boolean value:
      fatal: bad boolean config value 'non-boolean' for 'commit.gpgsign'
    
    Signed-off-by: Andrew Klotz <agc.klotz@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 3e885f02775dad0d907d447bc3c24fa07870b41f
Author: Denton Liu <liu.denton@gmail.com>
Date:   Mon Feb 8 23:28:53 2021 -0800

    stash: declare ref_stash as an array
    
    Save sizeof(const char *) bytes by declaring ref_stash as an array
    instead of having a redundant pointer to an array.
    
    Signed-off-by: Denton Liu <liu.denton@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 8c2462d1fe01fbc509827591f6b287d8af245ae1
Author: Denton Liu <liu.denton@gmail.com>
Date:   Mon Feb 8 23:28:52 2021 -0800

    t3905: use test_cmp() to check file contents
    
    Modernize the script by doing file content comparisons using test_cmp()
    instead of `test x = "$(cat file)"`.
    
    Signed-off-by: Denton Liu <liu.denton@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 27e25a8cbfff4a53eb1bf6bac8486af6a6a1201d
Author: Denton Liu <liu.denton@gmail.com>
Date:   Mon Feb 8 23:28:51 2021 -0800

    t3905: replace test -s with test_file_not_empty
    
    In order to modernize the test script, replace `test -s` with
    test_file_not_empty(), which provides better diagnostic output in the
    case of failure.
    
    Signed-off-by: Denton Liu <liu.denton@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 389ece402292f066be6bb4a22ac72682a6a2aea6
Author: Denton Liu <liu.denton@gmail.com>
Date:   Mon Feb 8 23:28:50 2021 -0800

    t3905: remove nested git in command substitution
    
    If a git command in a nested command substitution fails, it will be
    silently ignored since only the return code of the outer command
    substitutions is reported. Factor out nested command substitutions so
    that the error codes of those commands are reported.
    
    Signed-off-by: Denton Liu <liu.denton@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit bbaa45c3aace10e25ae9dd966e867796fbf440ad
Author: Denton Liu <liu.denton@gmail.com>
Date:   Mon Feb 8 23:28:49 2021 -0800

    t3905: move all commands into test cases
    
    In order to modernize the tests, move commands that currently run
    outside of test cases into a test case. Where possible, clean up files
    that are produced using test_when_finished() but in the case where files
    persist over multiple test cases, create a new test case to perform
    cleanup.
    
    Signed-off-by: Denton Liu <liu.denton@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 32b7385e435b114e7a3d2b1c8c21f5f48ba17db5
Author: Denton Liu <liu.denton@gmail.com>
Date:   Mon Feb 8 23:28:48 2021 -0800

    t3905: remove spaces after redirect operators
    
    For shell scripts, the usual convention is for there to be no space
    after redirection operators, (e.g. `>file`, not `> file`). Remove these
    spaces wherever they appear.
    
    Signed-off-by: Denton Liu <liu.denton@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit d6ab8b192907f72c415ad6aaa416f7b3b994c703
Author: Denton Liu <liu.denton@gmail.com>
Date:   Mon Feb 8 23:28:47 2021 -0800

    git-stash.txt: be explicit about subcommand options
    
    Currently, the options for the `list` and `show` subcommands are just
    listed as `<options>`. This seems to imply, from a cursory glance at the
    summary, that they take the stash options listed below. However, reading
    more carefully, we see that they take log options and diff options
    respectively.
    
    Make it more obvious that they take log and diff options by explicitly
    stating this in the subcommand summary.
    
    Signed-off-by: Denton Liu <liu.denton@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 16950f8384afa5106b1ce57da07a964c2aaef3f7
Author: Jeff King <peff@peff.net>
Date:   Tue Feb 9 05:53:50 2021 -0500

    rev-list: add --disk-usage option for calculating disk usage
    
    It can sometimes be useful to see which refs are contributing to the
    overall repository size (e.g., does some branch have a bunch of objects
    not found elsewhere in history, which indicates that deleting it would
    shrink the size of a clone).
    
    You can find that out by generating a list of objects, getting their
    sizes from cat-file, and then summing them, like:
    
        git rev-list --objects --no-object-names main..branch
        git cat-file --batch-check='%(objectsize:disk)' |
        perl -lne '$total += $_; END { print $total }'
    
    Though note that the caveats from git-cat-file(1) apply here. We "blame"
    base objects more than their deltas, even though the relationship could
    easily be flipped. Still, it can be a useful rough measure.
    
    But one problem is that it's slow to run. Teaching rev-list to sum up
    the sizes can be much faster for two reasons:
    
      1. It skips all of the piping of object names and sizes.
    
      2. If bitmaps are in use, for objects that are in the
         bitmapped packfile we can skip the oid_object_info()
         lookup entirely, and just ask the revindex for the
         on-disk size.
    
    This patch implements a --disk-usage option which produces the same
    answer in a fraction of the time. Here are some timings using a clone of
    torvalds/linux:
    
      [rev-list piped to cat-file, no bitmaps]
      $ time git rev-list --objects --no-object-names --all |
        git cat-file --buffer --batch-check='%(objectsize:disk)' |
        perl -lne '$total += $_; END { print $total }'
      1459938510
      real  0m29.635s
      user  0m38.003s
      sys   0m1.093s
    
      [internal, no bitmaps]
      $ time git rev-list --disk-usage --objects --all
      1459938510
      real  0m31.262s
      user  0m30.885s
      sys   0m0.376s
    
    Even though the wall-clock time is slightly worse due to parallelism,
    notice the CPU savings between the two. We saved 21% of the CPU just by
    avoiding the pipes.
    
    But the real win is with bitmaps. If we use them without the new option:
    
      [rev-list piped to cat-file, bitmaps]
      $ time git rev-list --objects --no-object-names --all --use-bitmap-index |
        git cat-file --batch-check='%(objectsize:disk)' |
        perl -lne '$total += $_; END { print $total }'
      1459938510
      real  0m6.244s
      user  0m8.452s
      sys   0m0.311s
    
    then we're faster to generate the list of objects, but we still spend a
    lot of time piping and looking things up. But if we do both together:
    
      [internal, bitmaps]
      $ time git rev-list --disk-usage --objects --all --use-bitmap-index
      1459938510
      real  0m0.219s
      user  0m0.169s
      sys   0m0.049s
    
    then we get the same answer much faster.
    
    For "--all", that answer will correspond closely to "du objects/pack",
    of course. But we're actually checking reachability here, so we're still
    fast when we ask for more interesting things:
    
      $ time git rev-list --disk-usage --use-bitmap-index v5.0..v5.10
      374798628
      real  0m0.429s
      user  0m0.356s
      sys   0m0.072s
    
    Signed-off-by: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit c85eec7fc37e1ca79072f263ae6ea1ee305ba38c
Author: Johannes Schindelin <johannes.schindelin@gmx.de>
Date:   Thu Feb 11 15:39:13 2021 +0000

    commit-graph: when incompatible with graphs, indicate why
    
    When `gc.writeCommitGraph = true`, it is possible that the commit-graph
    is _still_ not written: replace objects, grafts and shallow repositories
    are incompatible with the commit-graph feature.
    
    Under such circumstances, we need to indicate to the user why the
    commit-graph was not written instead of staying silent about it.
    
    Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
    Acked-by: Derrick Stolee <dstolee@microsoft.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit c809798b2acf1afdeeea02a9175677590ad8d689
Author: Johannes Schindelin <johannes.schindelin@gmx.de>
Date:   Wed Feb 10 16:11:38 2021 +0000

    reflog expire --stale-fix: be generous about missing objects
    
    Whenever a user runs `git reflog expire --stale-fix`, the most likely
    reason is that their repository is at least _somewhat_ corrupt. Which
    means that it is more than just possible that some objects are missing.
    
    If that is the case, that can currently let the command abort through
    the phase where it tries to mark all reachable objects.
    
    Instead of adding insult to injury, let's be gentle and continue as best
    as we can in such a scenario, simply by ignoring the missing objects and
    moving on.
    
    Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit c45dc9cf30a6f7f40adb3ea70dd2f2905ecd4afa
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Thu Feb 11 11:45:35 2021 +0100

    diff: plug memory leak from regcomp() on {log,diff} -I
    
    Fix a memory leak in 296d4a94e7 (diff: add -I<regex> that ignores
    matching changes, 2020-10-20) by freeing the memory it allocates in
    the newly introduced diff_free(). See the previous commit for details
    on that.
    
    This memory leak was intentionally introduced in 296d4a94e7, see the
    discussion on a previous iteration of it in
    https://lore.kernel.org/git/xmqqeelycajx.fsf@gitster.c.googlers.com/
    
    At that time freeing the memory was somewhat tedious, but since it
    isn't anymore with the newly introduced diff_free() let's use it.
    
    Let's retain the pattern for diff_free_file() and add a
    diff_free_ignore_regex(), even though (unlike "diff_free_file") we
    don't need to call it elsewhere. I think this'll make for more
    readable code than gradually accumulating a giant diff_free()
    function, sharing "int i" across unrelated code etc.
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit e900d494dcff7bb9033865e61b452128ff232481
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Thu Feb 11 11:45:34 2021 +0100

    diff: add an API for deferred freeing
    
    Add a diff_free() function to free anything we may have allocated in
    the "diff_options" struct, and the ability to make calling it a noop
    by setting "no_free" in "diff_options".
    
    This is required because when e.g. "git diff" is run we'll allocate
    things in that struct, use the diff machinery once, and then exit.
    
    But if we run e.g. "git log -p" we're going to re-use what we
    allocated across multiple diff_flush() calls, and only want to free
    things at the end.
    
    We've thus ended up with features like the recently added "diff -I"[1]
    where we'll leak memory. As it turns out it could have simply used the
    pattern established in 6ea57703f6 (log: prepare log/log-tree to reuse
    the diffopt.close_file attribute, 2016-06-22).
    
    Manually adding more such flags to things log_tree_commit() every time
    we need to allocate something would be tedious. Let's instead move
    that fclose() code it to a new diff_free(), in anticipation of freeing
    more things in that function in follow-up commits.
    
    Some functions such as log_tree_commit() need an idiom of optionally
    retaining a previous "no_free", as they may either free the memory
    themselves, or their caller may do so. I'm keeping that idiom in
    log_show_early() for good measure, even though I don't think it's
    currently called in this manner. It also gets passed an existing
    "struct rev_info", so future callers may want to set the "no_free"
    flag.
    
    This change is a bit hard to read because while the freeing pattern
    we're introducing isn't unusual, the "file" member is a special
    snowflake. We usually don't want to fclose() it. This is because
    "file" is usually stdout, in which case we don't want to fclose()
    it. We only want to opt-in to closing it when we e.g. open a file on
    the filesystem. Thus the opt-in "close_file" flag.
    
    So the API in general just needs a "no_free" flag to defer freeing,
    but the "file" member still needs its "close_file" flag. This is made
    more confusing because while refactoring this code we could replace
    some "close_file=0" with "no_free=1", whereas others need to set both
    flags.
    
    This is because there were some cases where an existing "close_file=0"
    meant "let's defer deallocation", and others where it meant "we don't
    want to close this file handle at all".
    
    1. 296d4a94e7 (diff: add -I<regex> that ignores matching changes,
       2020-10-20)
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 9b27b49240f6bf760ff58d917491bec0981aaf9f
Author: brian m. carlson <sandals@crustytoothpaste.net>
Date:   Thu Feb 11 02:08:06 2021 +0000

    gpg-interface: remove other signature headers before verifying
    
    When we have a multiply signed commit, we need to remove the signature
    in the header before verifying the object, since the trailing signature
    will not be over both pieces of data.  Do so, and verify that we
    validate the signature appropriately.
    
    Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 88bce0e24c8f777fce1f726b4553bd32286bba04
Author: brian m. carlson <sandals@crustytoothpaste.net>
Date:   Thu Feb 11 02:08:05 2021 +0000

    ref-filter: hoist signature parsing
    
    When we parse a signature in the ref-filter code, we continually
    increment the buffer pointer.  Hoist the signature parsing above the
    blank line delimiting headers and body so we can find the signature when
    using a header to sign the buffer.
    
    Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 937032e14aaf1eab59c96dd78938be1c48c648e1
Author: brian m. carlson <sandals@crustytoothpaste.net>
Date:   Thu Feb 11 02:08:04 2021 +0000

    commit: allow parsing arbitrary buffers with headers
    
    Currently only commits are signed with headers.  However, in the future,
    we'll also sign tags with headers as well.  Let's refactor out a
    function called parse_buffer_signed_by_header which does exactly that.
    In addition, since we'll want to sign things other than commits this
    way, let's call the function sign_with_header instead of do_sign_commit.
    
    Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 482c119186987110bfccf705a5ac75d399b08766
Author: brian m. carlson <sandals@crustytoothpaste.net>
Date:   Thu Feb 11 02:08:03 2021 +0000

    gpg-interface: improve interface for parsing tags
    
    We have a function which parses a buffer with a signature at the end,
    parse_signature, and this function is used for signed tags.  However,
    we'll need to store values for multiple algorithms, and we'll do this by
    using a header for the non-default algorithm.
    
    Adjust the parse_signature interface to store the parsed data in two
    strbufs and turn the existing function into parse_signed_buffer.  The
    latter is still used in places where we know we always have a signed
    buffer, such as push certs.
    
    Adjust all the callers to deal with this new interface.
    
    Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 210ff6ea346b7188a14c7b57807a0cfe12dfe703
Merge: 79afd7ebdc c6102b7585
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 16:56:03 2021 -0800

    Sync with master

commit 79afd7ebdc4841e6085e5e375f01c1b20468b701
Merge: fbd122fd6c e89f89361c
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 16:55:48 2021 -0800

    Merge branch 'js/fsck-name-objects-fix' into next
    
    Fix "git fsck --name-objects" which apparently has not been used by
    anybody who is motivated enough to report breakage.
    
    * js/fsck-name-objects-fix:
      fsck --name-objects: be more careful parsing generation numbers
      t1450: robustify `remove_object()`

commit fbd122fd6cfb394c444d049bc30d174d17776d83
Merge: e1fca79104 a38cb9878a
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 16:55:48 2021 -0800

    Merge branch 'jk/mailmap-only-at-root' into next
    
    The .mailmap is documented to be read only from the root level of a
    working tree, but a stray file in a bare repository also was read
    by accident, which has been corrected.
    
    * jk/mailmap-only-at-root:
      mailmap: only look for .mailmap in work tree

commit e1fca7910453527765acf39529fa64a1960030e5
Merge: 12f37433bd 0c5d83b248
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 16:55:48 2021 -0800

    Merge branch 'mt/grep-cached-untracked' into next
    
    "git grep --untracked" is meant to be "let's ALSO find in these
    files on the filesystem" when looking for matches in the working
    tree files, and does not make any sense if the primary search is
    done against the index, or the tree objects.  The "--cached" and
    "--untracked" options have been marked as mutually incompatible.
    
    * mt/grep-cached-untracked:
      grep: error out if --untracked is used with --cached

commit c6102b758572c7515f606b2423dfe38934fe6764
Merge: f9f2520108 d051ed77ee
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 16:48:07 2021 -0800

    Merge branch 'tb/ci-run-cocci-with-18.04'
    
    The version of Ubuntu Linux used by default at GitHub Actions CI
    has been updated to one that lack coccinelle; until it gets fixed,
    work it around by sticking to the previous release (18.04).
    
    * tb/ci-run-cocci-with-18.04:
      .github/workflows/main.yml: run static-analysis on bionic

commit 12f37433bd80c76d67aa57b8e233c31bae0a769d
Merge: c50bc53527 f9f2520108
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:51:27 2021 -0800

    Sync with master

commit f9f2520108bab26a750bcbb00518dc27672cf0a2
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:39:30 2021 -0800

    The seventh batch
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 466f94ec45e6170730f9dfaf7185a26f2e9fa8bf
Merge: 59ace284f3 73c01d25fe
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:48:33 2021 -0800

    Merge branch 'ab/detox-gettext-tests'
    
    Get rid of "GETTEXT_POISON" support altogether, which may or may
    not be controversial.
    
    * ab/detox-gettext-tests:
      tests: remove uses of GIT_TEST_GETTEXT_POISON=false
      tests: remove support for GIT_TEST_GETTEXT_POISON
      ci: remove GETTEXT_POISON jobs

commit 59ace284f33fe9928fcdb04b02044c921fd6905e
Merge: 0199c68d01 95ca1f987e
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:48:33 2021 -0800

    Merge branch 'ab/grep-pcre-invalid-utf8'
    
    Update support for invalid UTF-8 in PCRE2.
    
    * ab/grep-pcre-invalid-utf8:
      grep/pcre2: better support invalid UTF-8 haystacks
      grep/pcre2 tests: don't rely on invalid UTF-8 data test

commit 0199c68d010b613bde2575cd54d8c3597431fc81
Merge: 938ecaa42f 7599730b7e
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:48:33 2021 -0800

    Merge branch 'ab/retire-pcre1'
    
    The support for deprecated PCRE1 library has been dropped.
    
    * ab/retire-pcre1:
      Remove support for v1 of the PCRE library
      config.mak.uname: remove redundant NO_LIBPCRE1_JIT flag

commit 938ecaa42f1be47b9bcaa947ecd6b04f9c1dc3db
Merge: 2f794620f5 018b9deba5
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:48:33 2021 -0800

    Merge branch 'jk/pretty-lazy-load-commit'
    
    Some pretty-format specifiers do not need the data in commit object
    (e.g. "%H"), but we were over-eager to load and parse it, which has
    been made even lazier.
    
    * jk/pretty-lazy-load-commit:
      pretty: lazy-load commit data when expanding user-format

commit 2f794620f5dda37405e4ba9b606061468eceed98
Merge: 02fb21617e 19a0acc83e
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:48:32 2021 -0800

    Merge branch 'ds/more-index-cleanups'
    
    Cleaning various codepaths up.
    
    * ds/more-index-cleanups:
      t1092: test interesting sparse-checkout scenarios
      test-lib: test_region looks for trace2 regions
      sparse-checkout: load sparse-checkout patterns
      name-hash: use trace2 regions for init
      repository: add repo reference to index_state
      fsmonitor: de-duplicate BUG()s around dirty bits
      cache-tree: extract subtree_pos()
      cache-tree: simplify verify_cache() prototype
      cache-tree: clean up cache_tree_update()

commit 02fb21617e0da10c6cadb1c55147299456633bca
Merge: 7e94720c1e 076b444a62
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:48:32 2021 -0800

    Merge branch 'rs/worktree-list-verbose'
    
    `git worktree list` now annotates worktrees as prunable, shows
    locked and prunable attributes in --porcelain mode, and gained
    a --verbose option.
    
    * rs/worktree-list-verbose:
      worktree: teach `list` verbose mode
      worktree: teach `list` to annotate prunable worktree
      worktree: teach `list --porcelain` to annotate locked worktree
      t2402: ensure locked worktree is properly cleaned up
      worktree: teach worktree_lock_reason() to gently handle main worktree
      worktree: teach worktree to lazy-load "prunable" reason
      worktree: libify should_prune_worktree()

commit 7e94720c1ea42605a8f380802cfe90ec5e2477a2
Merge: e5abed92f5 f7d42ceec5
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:48:32 2021 -0800

    Merge branch 'js/rebase-i-commit-cleanup-fix'
    
    When "git rebase -i" processes "fixup" insn, there is no reason to
    clean up the commit log message, but we did the usual stripspace
    processing.  This has been corrected.
    
    * js/rebase-i-commit-cleanup-fix:
      rebase -i: do leave commit message intact in fixup! chains

commit e5abed92f50e39bf9514061ddd8e04c64d0a45d8
Merge: 04703f64be 30291525d9
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:48:32 2021 -0800

    Merge branch 'jk/t0000-cleanups'
    
    Code clean-up.
    
    * jk/t0000-cleanups:
      t0000: consistently use single quotes for outer tests
      t0000: run cleaning test inside sub-test
      t0000: run prereq tests inside sub-test
      t0000: keep clean-up tests together

commit 04703f64bee1b126b99d5eded0c7b954aa5abfbe
Merge: c9f94ab4fa e3f5da7e60
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:48:32 2021 -0800

    Merge branch 'sg/t7800-difftool-robustify'
    
    Test fix.
    
    * sg/t7800-difftool-robustify:
      t7800-difftool: don't accidentally match tmp dirs

commit c9f94ab4fa42c3fce6c8fa04bb850f73e7f1cd54
Merge: 9d5b1c06ac 15c9649730
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:48:31 2021 -0800

    Merge branch 'ab/lose-grep-debug'
    
    Lose the debugging aid that may have been useful in the past, but
    no longer is, in the "grep" codepaths.
    
    * ab/lose-grep-debug:
      grep/log: remove hidden --debug and --grep-debug options

commit 9d5b1c06ac1e46e985b5d62bccb78d9fb6de374a
Merge: 1d4f2316c5 8380dcd700
Author: Junio C Hamano <gitster@pobox.com>
Date:   Wed Feb 10 14:48:31 2021 -0800

    Merge branch 'jk/use-oid-pos'
    
    Code clean-up to ensure our use of hashtables using object names as
    keys use the "struct object_id" objects, not the raw hash values.
    
    * jk/use-oid-pos:
      oid_pos(): access table through const pointers
      hash_pos(): convert to oid_pos()
      rerere: use strmap to store rerere directories
      rerere: tighten rr-cache dirname check
      rerere: check dirname format while iterating rr_cache directory
      commit_graft_pos(): take an oid instead of a bare hash

commit a5cdca452052e824c9f3f7cf78385fbec5bb1976
Author: Eric Wong <e@80x24.org>
Date:   Wed Feb 10 21:55:43 2021 +0000

    t1500: ensure current --since= behavior remains
    
    This behavior of git-rev-parse is observed since git 1.8.3.1
    at least(*), and likely earlier versions.
    
    At least one git-reliant project in-the-wild relies on this
    current behavior of git-rev-parse being able to handle multiple
    --since= arguments without squeezing identical results together.
    So add a test to prevent the potential for regression in
    downstream projects.
    
    (*) 1.8.3.1 the version packaged for CentOS 7.x
    
    Signed-off-by: Eric Wong <e@80x24.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit fa153c1cd7a84accc83e97723af85cf0ab3869e7
Author: Charvi Mendiratta <charvi077@gmail.com>
Date:   Wed Feb 10 17:06:51 2021 +0530

    doc/rebase -i: fix typo in the documentation of 'fixup' command
    
    Mentored-by: Christian Couder <chriscool@tuxfamily.org>
    Mentored-by: Phillip Wood <phillip.wood@dunelm.org.uk>
    Helped-by: Eric Sunshine <sunshine@sunshineco.com>
    Signed-off-by: Charvi Mendiratta <charvi077@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 9ff6b74bb7653ba498414764e48ca015554f5ac3
Author: Charvi Mendiratta <charvi077@gmail.com>
Date:   Wed Feb 10 17:06:50 2021 +0530

    t/t3437: fixup the test 'multiple fixup -c opens editor once'
    
    In the test, FAKE_COMMIT_MESSAGE replaces the commit message each
    time it is invoked so there will be only one instance of "Modified-A3"
    no matter how many times we invoke the editor. Let's fix this and use
    FAKE_COMMIT_AMEND instead so that it adds "Modified-A3" once for each
    time the editor is invoked.
    
    This patch also removes the check for counting the number of
    "Modified-A3" lines and instead compares the whole message to check
    that the commenting code works correctly for 'fixup -c' as well as
    'fixup -C'.
    
    Mentored-by: Christian Couder <chriscool@tuxfamily.org>
    Mentored-by: Phillip Wood <phillip.wood@dunelm.org.uk>
    Helped-by: Eric Sunshine <sunshine@sunshineco.com>
    Signed-off-by: Charvi Mendiratta <charvi077@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 9c7650c45ce54ae1998b979703b9baa48406145c
Author: Charvi Mendiratta <charvi077@gmail.com>
Date:   Wed Feb 10 17:06:49 2021 +0530

    t/t3437: use named commits in the tests
    
    Use the named commits in the tests so that they will still refer to the
    same commit if the setup gets changed in the future whereas 'branch~2'
    will change which commit it points to.
    
    Mentored-by: Christian Couder <chriscool@tuxfamily.org>
    Mentored-by: Phillip Wood <phillip.wood@dunelm.org.uk>
    Helped-by: Eric Sunshine <sunshine@sunshineco.com>
    Signed-off-by: Charvi Mendiratta <charvi077@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit d8bd08066db18a4db408ff2957f595592e21c336
Author: Charvi Mendiratta <charvi077@gmail.com>
Date:   Wed Feb 10 17:06:48 2021 +0530

    t/t3437: simplify and document the test helpers
    
    Let's simplify the test_commit_message() helper function and add
    comments to the function.
    
    This patch also document the working of 'fixup -C' with "amend!" in the
    test-description.
    
    Mentored-by: Christian Couder <chriscool@tuxfamily.org>
    Mentored-by: Phillip Wood <phillip.wood@dunelm.org.uk>
    Helped-by: Eric Sunshine <sunshine@sunshineco.com>
    Signed-off-by: Charvi Mendiratta <charvi077@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 4755fed0a6d1390b4520658228617b17b9ee822a
Author: Charvi Mendiratta <charvi077@gmail.com>
Date:   Wed Feb 10 17:06:47 2021 +0530

    t/t3437: check the author date of fixed up commit
    
    Add '%at' format in the get_author() function and update the test to
    check that the author date of the fixed up commit is unchanged.
    
    Mentored-by: Christian Couder <chriscool@tuxfamily.org>
    Mentored-by: Phillip Wood <phillip.wood@dunelm.org.uk>
    Helped-by: Eric Sunshine <sunshine@sunshineco.com>
    Signed-off-by: Charvi Mendiratta <charvi077@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 733ad2e15a5f078543fb0a5a10ee8ae5419d318e
Author: Charvi Mendiratta <charvi077@gmail.com>
Date:   Wed Feb 10 17:06:46 2021 +0530

    t/t3437: remove the dependency of 'expected-message' file from tests
    
    As it is currently implemented, it's too difficult to follow along and
    remember the value of "expected-message" from test to test. It also
    makes it difficult to extend tests or add new tests in between existing
    tests without negatively impacting other tests.
    
    Let's set up "expected-message" to the precise content needed by the
    test, so that both the problems go away and also makes easier to run
    tests selectively with '--run' or 'GIT_SKIP_TESTS'
    
    Mentored-by: Christian Couder <chriscool@tuxfamily.org>
    Mentored-by: Phillip Wood <phillip.wood@dunelm.org.uk>
    Helped-by: Eric Sunshine <sunshine@sunshineco.com>
    Signed-off-by: Charvi Mendiratta <charvi077@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 17665167bb548b7c46e207890edbec7feba054bb
Author: Charvi Mendiratta <charvi077@gmail.com>
Date:   Wed Feb 10 17:06:45 2021 +0530

    t/t3437: fixup here-docs in the 'setup' test
    
    The most common way to format here-docs in Git test scripts is for the
    body and EOF to be indented the same amount as the command which opened
    the here-doc. Fix a few here-docs in this script to conform to that
    standard and also remove the unnecessary curly braces.
    
    Mentored-by: Christian Couder <chriscool@tuxfamily.org>
    Mentored-by: Phillip Wood <phillip.wood@dunelm.org.uk>
    Helped-by: Eric Sunshine <sunshine@sunshineco.com>
    Signed-off-by: Charvi Mendiratta <charvi077@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 75ace8329c730571281357dd40718a8aefc50db7
Author: Charvi Mendiratta <charvi077@gmail.com>
Date:   Wed Feb 10 17:06:44 2021 +0530

    t/lib-rebase: update the documentation of FAKE_LINES
    
    FAKE_LINES helper function use underscore to embed a space in a single
    command. Let's document it and also update the list of commands.
    
    Mentored-by: Christian Couder <chriscool@tuxfamily.org>
    Mentored-by: Phillip Wood <phillip.wood@dunelm.org.uk>
    Helped-by: Eric Sunshine <sunshine@sunshineco.com>
    Signed-off-by: Charvi Mendiratta <charvi077@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit f07871d302c32777de25b3fde3c621be3b2e32c3
Author: Charvi Mendiratta <charvi077@gmail.com>
Date:   Wed Feb 10 17:06:43 2021 +0530

    rebase -i: clarify and fix 'fixup -c' rebase-todo help
    
    When `-c` says "edit the commit message" it's not clear what will be
    edited. The original's commit message or the replacement's message or a
    combination of the two. Word it such that it states more precisely what
    exactly will be edited. While at it, also drop the jarring period and
    capitalization, neither of which is otherwise present in the message.
    
    Mentored-by: Christian Couder <chriscool@tuxfamily.org>
    Mentored-by: Phillip Wood <phillip.wood@dunelm.org.uk>
    Helped-by: Eric Sunshine <sunshine@sunshineco.com>
    Signed-off-by: Charvi Mendiratta <charvi077@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 59934417fffd3f8dcdc9e18271644b4db0627ea9
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Tue Feb 9 22:41:55 2021 +0100

    t/.gitattributes: sort lines
    
    Sort the lines starting with "/", the only out-of-place line was added
    along with most of the file in 614f4f0f350 (Fix the remaining tests
    that failed with core.autocrlf=true, 2017-05-09).
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit ddfe900612119e4e8c21c812a0ced4a72e5d66b7
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Tue Feb 9 22:41:54 2021 +0100

    test-lib-functions: move function to lib-bitmap.sh
    
    Move a function added to test-lib-functions.sh in ea047a8eb4f (t5310:
    factor out bitmap traversal comparison, 2020-02-14) into a new
    lib-bitmap.sh.
    
    The test-lib-functions.sh file should be for functions that are widely
    used across the test suite, if something's only used by a few tests it
    makes more sense to have it in a lib-*.sh file.
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 3fca1fc651c025724c7ea36aa9a83182c8dfdb58
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Tue Feb 9 22:41:53 2021 +0100

    test libs: rename gitweb-lib.sh to lib-gitweb.sh
    
    Rename gitweb-lib.sh to lib-gitweb.sh for consistency with other test
    library files.
    
    When it was introduced in 05526071cb5 (gitweb: split test suite into
    library and tests, 2009-08-27) this naming pattern was more
    common.
    
    Since then all but one other such library which didn't start with
    "lib-*.sh" such as t6000lib.sh has been been renamed, see
    e.g. 9d488eb40e2 (Move t6000lib.sh to lib-*, 2010-05-07).
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit e8a8e7ff983c309b9e8edbb1a570bfbb36ad1e7c
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Tue Feb 9 22:41:52 2021 +0100

    test libs: rename bundle helper to "lib-bundle.sh"
    
    Rename the recently introduced test-bundle-functions.sh to be
    consistent with other lib-*.sh files, which is the convention for
    these sorts of shared test library functions.
    
    The new test-bundle-functions.sh was introduced in 9901164d81d (test:
    add helper functions for git-bundle, 2021-01-11). It was the only
    test-*.sh of this nature.
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit f3ad2bf4712aa41d710ce3eb8207c12dda43710d
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Tue Feb 9 22:41:51 2021 +0100

    test-lib-functions: remove generate_zero_bytes() wrapper
    
    Since d5cfd142ec1 (tests: teach the test-tool to generate NUL bytes
    and use it, 2019-02-14) the generate_zero_bytes() functions has been a
    thin wrapper for "test-tool genzeros". Let's have its only user call
    that directly instead.
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 762ccf9906a946b4ba6d9a1b97b6a6b465f02ac3
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Tue Feb 9 22:41:50 2021 +0100

    test-lib-functions: move test_set_index_version() to its user
    
    Move the test_set_index_version() function to its only user. This
    function has only been used in one place since its addition in
    5d9fc888b48 (test-lib: allow setting the index format version,
    2014-02-23). Let's have that test script define it.
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 9e9c7dd6f13e9a5027538854132b9f6b6ddb6be2
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Tue Feb 9 22:41:49 2021 +0100

    test lib: change "error" to "BUG" as appropriate
    
    Change two uses of "error" in test-lib-functions.sh to "BUG".
    
    In the first instance in "test_cmp_rev" the author of the "BUG"
    function added in [1] had another in-flight patch adding this in [2],
    and the two were never consolidated.
    
    In the second case in "test_atexit" added in [3] that we could have
    instead used "BUG" appears to have been missed.
    
    1. 165293af3ce (tests: send "bug in the test script" errors to the
       script's stderr, 2018-11-19)
    
    2. 30d0b6dccbc (test-lib-functions: make 'test_cmp_rev' more
       informative on failure, 2018-11-19)
    
    3. 900721e15c4 (test-lib: introduce 'test_atexit', 2019-03-13)
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit c0eedbc009d9587602bfb2057158c102a88acf3f
Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Date:   Tue Feb 9 22:41:48 2021 +0100

    test-lib: remove check_var_migration
    
    Remove the check_var_migration() migration helper. This was added back
    in [1], [2] and [3] to warn users to migrate from e.g. the
    "GIT_FSMONITOR_TEST" name to "GIT_TEST_FSMONITOR".
    
    I daresay that having been warning about this since late 2018 (or
    v2.20.0) was sufficient time to give everyone interested a heads-up
    about moving to the new names.
    
    I don't see the need for going through the "do this later" codepath
    anticipated in [1], let's just remove this instead.
    
    1. 4cb54d0aa8e (fsmonitor: update GIT_TEST_FSMONITOR support,
       2018-09-18)
    2. 1f357b045b5 (read-cache: update TEST_GIT_INDEX_VERSION support,
       2018-09-18)
    3. 5765d97b71d (preload-index: update GIT_FORCE_PRELOAD_TEST support,
       2018-09-18)
    
    Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit a38cb9878ab686d3b7a19e46d8c3fff79cdccf4b
Author: Jeff King <peff@peff.net>
Date:   Wed Feb 10 15:34:33 2021 -0500

    mailmap: only look for .mailmap in work tree
    
    When trying to find a .mailmap file, we will always look for it in the
    current directory. This makes sense in a repository with a working tree,
    since we'd always go to the toplevel directory at startup. But for a
    bare repository, it can be confusing. With an option like --git-dir (or
    $GIT_DIR in the environment), we don't chdir at all, and we'd read
    .mailmap from whatever directory you happened to be in before starting
    Git.
    
    (Note that --git-dir without specifying a working tree historically
    means "the current directory is the root of the working tree", but most
    bare repositories will have core.bare set these days, meaning they will
    realize there is no working tree at all).
    
    The documentation for gitmailmap(5) says:
    
      If the file `.mailmap` exists at the toplevel of the repository[...]
    
    which likewise reinforces the notion that we are looking in the working
    tree.
    
    This patch prevents us from looking for such a file when we're in a bare
    repository. This does break something that used to work:
    
      cd bare.git
      git cat-file blob HEAD:.mailmap >.mailmap
      git shortlog
    
    But that was never advertised in the documentation. And these days we
    have mailmap.blob (which defaults to HEAD:.mailmap) to do the same thing
    in a much cleaner way.
    
    However, there's one more interesting case: we might not have a
    repository at all! The git-shortlog command can be run with git-log
    output fed on its stdin, and it will apply the mailmap. In that case, it
    probably does make sense to read .mailmap from the current directory.
    This patch will continue to do so.
    
    That leads to one even weirder case: if you run git-shortlog to process
    stdin, the input _could_ be from a different repository entirely. Should
    we respect the in-tree .mailmap then? Probably yes. Whatever the source
    of the input, if shortlog is running in a repository, the documentation
    claims that we'd read the .mailmap from its top-level (and of course
    it's reasonably likely that it _is_ from the same repo, and the user
    just preferred to run git-log and git-shortlog separately for whatever
    reason).
    
    The included test covers these cases, and we now document the "no repo"
    case explicitly.
    
    We also add a test that confirms we find a top-level ".mailmap" even
    when we start in a subdirectory of the working tree. This worked both
    before and after this commit, but we never tested it explicitly (it
    works because we always chdir to the top-level of the working tree if
    there is one).
    
    Signed-off-by: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit e89f89361cd7b706858eb22a6cf3d59d31a00acf
Author: Johannes Schindelin <johannes.schindelin@gmx.de>
Date:   Wed Feb 10 18:01:30 2021 +0000

    fsck --name-objects: be more careful parsing generation numbers
    
    In 7b35efd734e (fsck_walk(): optionally name objects on the go,
    2016-07-17), the `fsck` machinery learned to optionally name the
    objects, so that it is easier to see what part of the repository is in a
    bad shape, say, when objects are missing.
    
    To save on complexity, this machinery uses a parser to determine the
    name of a parent given a commit's name: any `~<n>` suffix is parsed and
    the parent's name is formed from the prefix together with `~<n+1>`.
    
    However, this parser has a bug: if it finds a suffix `<n>` that is _not_
    `~<n>`, it will mistake the empty string for the prefix and `<n>` for
    the generation number. In other words, it will generate a name of the
    form `~<bogus-number>`.
    
    Let's fix this.
    
    Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 8c891eed3a89ff945b7957cdf62037b2e2b6eca7
Author: Johannes Schindelin <johannes.schindelin@gmx.de>
Date:   Wed Feb 10 18:01:29 2021 +0000

    t1450: robustify `remove_object()`
    
    This function can be simplified by using the `test_oid_to_path()`
    helper, which incidentally also makes it more robust by not relying on
    the exact file system layout of the loose object files.
    
    While at it, do not define those functions in a test case, it buys us
    nothing.
    
    Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit acc1c4d5d4c80c4fd93aaa151caa5593656600ae
Author: Derrick Stolee <dstolee@microsoft.com>
Date:   Tue Feb 9 13:42:29 2021 +0000

    maintenance: incremental strategy runs pack-refs weekly
    
    When the 'maintenance.strategy' config option is set to 'incremental',
    a default maintenance schedule is enabled. Add the 'pack-refs' task to
    that strategy at the weekly cadence.
    
    Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
    Reviewed-by: Taylor Blau <me@ttaylorr.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 41abfe15d95ede4c2a047180a6062eac23d8f7d6
Author: Derrick Stolee <dstolee@microsoft.com>
Date:   Tue Feb 9 13:42:28 2021 +0000

    maintenance: add pack-refs task
    
    It is valuable to collect loose refs into a more compressed form. This
    is typically the packed-refs file, although this could be the reftable
    in the future. Having packed refs can be extremely valuable in repos
    with many tags or remote branches that are not modified by the local
    user, but still are necessary for other queries.
    
    For instance, with many exploded refs, commands such as
    
            git describe --tags --exact-match HEAD
    
    can be very slow (multiple seconds). This command in particular is used
    by terminal prompts to show when a detatched HEAD is pointing to an
    existing tag, so having it be slow causes significant delays for users.
    
    Add a new 'pack-refs' maintenance task. It runs 'git pack-refs --all
    --prune' to move loose refs into a packed form. For now, that is the
    packed-refs file, but could adjust to other file formats in the future.
    
    This is the first of several sub-tasks of the 'gc' task that could be
    extracted to their own tasks. In this process, we should not change the
    behavior of the 'gc' task since that remains the default way to keep
    repositories maintained. Creating a new task for one of these sub-tasks
    only provides more customization options for those choosing to not use
    the 'gc' task. It is certainly possible to have both the 'gc' and
    'pack-refs' tasks enabled and run regularly. While they may repeat
    effort, they do not conflict in a destructive way.
    
    The 'auto_condition' function pointer is left NULL for now. We could
    extend this in the future to have a condition check if pack-refs should
    be run during 'git maintenance run --auto'.
    
    Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
    Reviewed-by: Taylor Blau <me@ttaylorr.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit c50bc53527aa6cae8bf008cf729676c71d6cca8f
Merge: c3ed19b2ec d051ed77ee
Author: Junio C Hamano <gitster@pobox.com>
Date:   Tue Feb 9 16:58:50 2021 -0800

    Merge branch 'tb/ci-run-cocci-with-18.04' into next
    
    The version of Ubuntu Linux used by default at GitHub Actions CI
    has been updated to one that lack coccinelle; until it gets fixed,
    work it around by sticking to the previous release (18.04).
    
    * tb/ci-run-cocci-with-18.04:
      .github/workflows/main.yml: run static-analysis on bionic

commit c3ed19b2ec51ea910b146283cad22a4acf550966
Merge: 94911ad676 9d9cf23031
Author: Junio C Hamano <gitster@pobox.com>
Date:   Tue Feb 9 16:58:50 2021 -0800

    Merge branch 'sh/mergetool-hideresolved' into next
    
    "git mergetool" feeds three versions (base, local and remote) of
    a conflicted path unmodified.  The command learned to optionally
    prepare these files with unconflicted parts already resolved.
    
    * sh/mergetool-hideresolved:
      mergetool: add per-tool support and overrides for the hideResolved flag
      mergetool: break setup_tool out into separate initialization function
      mergetool: add hideResolved configuration

commit 94911ad67676ffb6123ab860f57561f4326b1c96
Merge: 4eea330afb 0a9dde4a04
Author: Junio C Hamano <gitster@pobox.com>
Date:   Tue Feb 9 16:58:50 2021 -0800

    Merge branch 'jt/trace2-BUG' into next
    
    Even though invocations of "die()" were logged to the trace2
    system, "BUG()"s were not, which has been corrected.
    
    * jt/trace2-BUG:
      usage: trace2 BUG() invocations

commit 0a9dde4a04c1228025d292f44113cb8f9cebbfba
Author: Jonathan Tan <jonathantanmy@google.com>
Date:   Fri Feb 5 12:09:08 2021 -0800

    usage: trace2 BUG() invocations
    
    die() messages are traced in trace2, but BUG() messages are not. Anyone
    tracking die() messages would have even more reason to track BUG().
    Therefore, write to trace2 when BUG() is invoked.
    
    Signed-off-by: Jonathan Tan <jonathantanmy@google.com>
    Helped-by: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit 9d9cf230317f7fe7cb153f61b537e6e9bef22e3b
Author: Seth House <seth@eseth.com>
Date:   Tue Feb 9 13:07:12 2021 -0700

    mergetool: add per-tool support and overrides for the hideResolved flag
    
    Add a per-tool override flag so that users may enable the flag for one
    tool and disable it for another by setting
    `mergetool.<tool>.hideResolved` to `false`.
    
    In addition, the author or maintainer of a mergetool may optionally
    override the default `hideResolved` value for that mergetool. If the
    `mergetools/<tool>` shell script contains a `hide_resolved_enabled`
    function it will be called when the mergetool is invoked and the return
    value will be used as the default for the `hideResolved` flag.
    
        hide_resolved_enabled () {
            return 1
        }
    
    Disabling may be desirable if the mergetool wants or needs access to the
    original, unmodified 'LOCAL' and 'REMOTE' versions of the conflicted
    file. For example:
    
    - A tool may use a custom conflict resolution algorithm and prefer to
      ignore the results of Git's conflict resolution.
    - A tool may want to visually compare/constrast the version of the file
      from before the merge (saved to 'LOCAL', 'REMOTE', and 'BASE') with
      Git's conflict resolution results (saved to 'MERGED').
    
    Helped-by: Johannes Sixt <j6t@kdbg.org>
    Helped-by: Junio C Hamano <gitster@pobox.com>
    Signed-off-by: Seth House <seth@eseth.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>

commit de8dafbada811bc1bc8e1288541931f3c5406231
Author: Seth House <seth@eseth.com>
Date:   Tue Feb 9 13:07:11 2021 -0700

    mergetool: break setup_tool out into separate initialization function
    
    This is preparation for the following commit where we need to source the
    mergetool shell script to look for overrides before `run_merge_tool` is
    called. Previously `run_merge_tool` both sourced that script and invoked
    the mergetool.
    
    In the case of the following commit, we need the result of the
    `hide_resolved` override, if present, before we actually run
    `run_merge_tool`.
    
    The new `initialize_merge_tool` wrapper is exposed and documented as
    a public interface for consistency with the existing `run_merge_tool`
    which is also public. Although `setup_tool` could instead be exposed
    directly, the related `setup_user_tool` would probably also want to be
    elevated to match and this felt the cleanest to me.
    
    Signed-off-by: Seth House <seth@eseth.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Created: 2017-12-03 Last update: 2021-02-25 15:35
Depends on packages which need a new maintainer normal
The packages that git depends on which need a new maintainer are:
  • cvsps (#501257)
    • Build-Depends: cvsps
    • Depends: cvsps
  • dh-exec (#851746)
    • Build-Depends: dh-exec
  • docbook-xsl (#802370)
    • Build-Depends-Indep: docbook-xsl
Created: 2019-11-22 Last update: 2021-02-25 14:33
Build log checks report 1 warning low
Build log checks report 1 warning
Created: 2017-10-26 Last update: 2017-10-26 07:22
Standards version of the package is outdated. wishlist
The package should be updated to follow the last version of Debian Policy (Standards-Version 4.5.1 instead of 4.3.0.1).
Created: 2019-07-08 Last update: 2021-02-17 10:38
testing migrations
  • excuses:
    • Migration status for git (1:2.30.0-1 to 1:2.30.1-1): Waiting for test results, another package or too young (no action required now - check later)
    • Issues preventing migration:
    • Too young, only 8 of 10 days old
    • Additional info:
    • Piuparts tested OK - https://piuparts.debian.org/sid/source/g/git.html
    • autopkgtest for lava/2020.12-1: amd64: Pass, arm64: Ignored failure, armhf: Ignored failure, i386: Pass, ppc64el: Ignored failure
    • Not considered
news
[rss feed]
  • [2021-02-17] Accepted git 1:2.30.1+next.20210212-1 (source) into experimental (Jonathan Nieder)
  • [2021-02-17] Accepted git 1:2.30.1-1 (source) into unstable (Jonathan Nieder)
  • [2021-02-01] git 1:2.30.0-1 MIGRATED to testing (Debian testing watch)
  • [2020-12-29] Accepted git 1:2.30.0+next.20201227-1 (source) into experimental (Jonathan Nieder)
  • [2020-12-29] Accepted git 1:2.30.0-1 (source) into unstable (Jonathan Nieder)
  • [2020-12-24] Accepted git 1:2.30.0~rc2+next.20201223-1 (source) into experimental (Jonathan Nieder)
  • [2020-12-24] Accepted git 1:2.30.0~rc2-1 (source) into unstable (Jonathan Nieder)
  • [2020-12-22] Accepted git 1:2.30.0~rc1-1 (source) into unstable (Jonathan Nieder)
  • [2020-12-21] Accepted git 1:2.30.0~rc1+next.20201218-1 (source) into experimental (Jonathan Nieder)
  • [2020-12-03] Accepted git 1:2.29.2-1~bpo10+1 (source) into buster-backports (Bastian Blank)
  • [2020-11-13] git 1:2.29.2-1 MIGRATED to testing (Debian testing watch)
  • [2020-11-03] Accepted git 1:2.29.2+next.20201030-1 (source) into experimental (Jonathan Nieder)
  • [2020-11-02] Accepted git 1:2.29.2-1 (source) into unstable (Jonathan Nieder)
  • [2020-10-27] Accepted git 1:2.29.1+next.20201023-1 (source) into experimental (Jonathan Nieder)
  • [2020-10-27] Accepted git 1:2.29.1-1 (source) into unstable (Jonathan Nieder)
  • [2020-08-15] Accepted git 1:2.28.0+next.20200813-1 (source) into experimental (Jonathan Tan) (signed by: Jonathan Nieder)
  • [2020-08-10] Accepted git 1:2.28.0+next.20200807-1 (source) into experimental (Jonathan Nieder)
  • [2020-08-07] git 1:2.28.0-1 MIGRATED to testing (Debian testing watch)
  • [2020-07-27] Accepted git 1:2.28.0+next.20200726-1 (source) into experimental (Jonathan Nieder)
  • [2020-07-27] Accepted git 1:2.28.0-1 (source) into unstable (Jonathan Nieder)
  • [2020-07-23] Accepted git 1:2.28.0~rc2+next.20200722-1 (source) into experimental (Jonathan Nieder)
  • [2020-07-23] Accepted git 1:2.28.0~rc2-1 (source) into unstable (Jonathan Nieder)
  • [2020-07-18] Accepted git 1:2.28.0~rc1+next.20200716-1 (source) into experimental (Jonathan Nieder)
  • [2020-07-18] Accepted git 1:2.28.0~rc1-1 (source) into unstable (Jonathan Nieder)
  • [2020-07-13] Accepted git 1:2.28.0~rc0+next.20200709-1 (source) into experimental (Jonathan Nieder)
  • [2020-07-13] Accepted git 1:2.27.0-1~bpo10+1 (source) into buster-backports (Jonathan Nieder)
  • [2020-07-13] Accepted git 1:2.28.0~rc0-1 (source) into unstable (Jonathan Nieder)
  • [2020-06-29] Accepted git 1:2.27.0+next.20200625-1 (source) into experimental (Jonathan Nieder)
  • [2020-06-12] git 1:2.27.0-1 MIGRATED to testing (Debian testing watch)
  • [2020-06-01] Accepted git 1:2.27.0+next.20200531-1 (source) into experimental (Jonathan Nieder) (signed by: Philipp Kern)
  • 1
  • 2
bugs [bug history graph]
  • all: 416 431
  • RC: 1
  • I&N: 175 176
  • M&W: 240 254
  • F&P: 0
  • patch: 26 33
links
  • homepage
  • buildd: logs, exp, checks, clang, reproducibility, cross
  • popcon
  • browse source code
  • edit tags
  • other distros
  • security tracker
  • screenshots
  • l10n (-, 91)
ubuntu Ubuntu logo [Information about Ubuntu for Debian Developers]
  • version: 1:2.30.0-1ubuntu1
  • 78 bugs (2 patches)
  • patches for 1:2.30.0-1ubuntu1

Debian Package Tracker — Copyright 2013-2018 The Distro Tracker Developers
Report problems to the tracker.debian.org pseudo-package in the Debian BTS.
Documentation — Bugs — Git Repository — Contributing