summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2022-09-29Merge branch 'l10n-de-2.38-rnd3' of github.com:ralfth/gitJiang Xin1-4/+4
* 'l10n-de-2.38-rnd3' of github.com:ralfth/git: l10n: de.po: update German translation
2022-09-28push: improve grammar of branch.autoSetupMerge adviceAlex Henrie1-2/+2
"upstream branches" is plural but "name" and "local branch" are singular. Make them all singular. And because we're talking about a hypothetical branch that doesn't exist yet, use the future tense. Signed-off-by: Alex Henrie <alexhenrie24@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-29Merge branch 'fr_2.38_rnd3' of github.com:jnavila/gitJiang Xin1-3/+3
* 'fr_2.38_rnd3' of github.com:jnavila/git: l10n: fr: v2.38.0 round 3
2022-09-29Merge branch 'catalan' of github.com:Softcatala/git-poJiang Xin1-34/+34
* 'catalan' of github.com:Softcatala/git-po: l10n: Update Catalan translation
2022-09-28l10n: fr: v2.38.0 round 3Jean-Noël Avila1-3/+3
Signed-off-by: Jean-Noël Avila <jn.avila@free.fr>
2022-09-28read-cache: avoid misaligned reads in index v4Victoria Dye1-19/+42
The process for reading the index into memory from disk is to first read its contents into a single memory-mapped file buffer (type 'char *'), then sequentially convert each on-disk index entry into a corresponding incore 'cache_entry'. To access the contents of the on-disk entry for processing, a moving pointer within the memory-mapped file is cast to type 'struct ondisk_cache_entry *'. In index v4, the entries in the on-disk index file are written *without* aligning their first byte to a 4-byte boundary; entries are a variable length (depending on the entry name and whether or not extended flags are used). As a result, casting the 'char *' buffer pointer to 'struct ondisk_cache_entry *' then accessing its contents in a 'SANITIZE=undefined' build can trigger the following error: read-cache.c:1886:46: runtime error: member access within misaligned address <address> for type 'struct ondisk_cache_entry', which requires 4 byte alignment Avoid this error by reading fields directly from the 'char *' buffer, using the 'offsetof' individual fields in 'struct ondisk_cache_entry'. Additionally, add documentation describing why the new approach avoids the misaligned address error, as well as advice on how to improve the implementation in the future. Reported-by: Jeff King <peff@peff.net> Signed-off-by: Victoria Dye <vdye@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-28l10n: Update Catalan translationJordi Mas1-34/+34
Signed-off-by: Jordi Mas <jmas@softcatala.org>
2022-09-28merge-ort: return early when failing to write a blobJohannes Schindelin1-9/+19
In the previous commit, we fixed a segmentation fault when a tree object could not be written. However, before the tree object is written, `merge-ort` wants to write out a blob object (except in cases where the merge results in a blob that already exists in the database). And this can fail, too, but we ignore that write failure so far. Let's pay close attention and error out early if the blob could not be written. This reduces the error output of t4301.25 ("merge-ort fails gracefully in a read-only repository") from: error: insufficient permission for adding an object to repository database ./objects error: error: Unable to add numbers to database error: insufficient permission for adding an object to repository database ./objects error: error: Unable to add greeting to database error: insufficient permission for adding an object to repository database ./objects fatal: failure to merge to: error: insufficient permission for adding an object to repository database ./objects error: error: Unable to add numbers to database fatal: failure to merge This is _not_ just a cosmetic change: Even though one might assume that the operation would have failed anyway at the point when the new tree object is written (and the corresponding tree object _will_ be new if it contains a blob that is new), but that is not so: As pointed out by Elijah Newren, when Git has previously been allowed to add loose objects via `sudo` calls, it is very possible that the blob object cannot be written (because the corresponding `.git/objects/??/` directory may be owned by `root`) but the tree object can be written (because the corresponding objects directory is owned by the current user). This would result in a corrupt repository because it is missing the blob object, and with this here patch we prevent that. Note: This patch adjusts two variable declarations from `unsigned` to `int` because their purpose is to hold the return value of `handle_content_merge()`, which is of type `int`. The existing users of those variables are only interested whether that variable is zero or non-zero, therefore this type change does not affect the existing code. Reviewed-by: Elijah Newren <newren@gmail.com> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-28merge-ort: fix segmentation fault in read-only repositoriesJohannes Schindelin2-25/+50
If the blob/tree objects cannot be written, we really need the merge operations to fail, and not to continue (and then try to access the tree object which is however still set to `NULL`). Let's stop ignoring the return value of `write_object_file()` and `write_tree()` and set `clean = -1` in the error case. Reviewed-by: Elijah Newren <newren@gmail.com> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-28l10n: de.po: update German translationRalf Thielow1-4/+4
Signed-off-by: Ralf Thielow <ralf.thielow@gmail.com>
2022-09-28l10n: zh_CN: 2.38.0 round 3Fangyi Zhou1-2/+2
Signed-off-by: Fangyi Zhou <me@fangyi.io>
2022-09-28Merge branch 'turkish' of github.com:bitigchi/git-poJiang Xin1-3/+3
* 'turkish' of github.com:bitigchi/git-po: l10n: tr: v2.38.0 3rd round
2022-09-28Merge branch 'master' of github.com:alshopov/git-poJiang Xin1-88/+3
* 'master' of github.com:alshopov/git-po: l10n: bg.po: Updated Bulgarian translation (5484t)
2022-09-28l10n: tr: v2.38.0 3rd roundEmir SARI1-3/+3
Signed-off-by: Emir SARI <emir_sari@icloud.com>
2022-09-28l10n: bg.po: Updated Bulgarian translation (5484t)Alexander Shopov1-88/+3
Signed-off-by: Alexander Shopov <ash@kambanaria.org>
2022-09-28l10n: po-id for 2.38 (round 3)Bagas Sanjaya1-283/+338
Update following components: * sequencer.c * wt-status.c Translate following new components: * compat/compiler.h * compat/disk.h * compat/fsmonitor/fsm-health-win32.c * compat/fsmonitor/fsm-listen-darwin.c * compat/fsmonitor/fsm-listen-win32.c * compat/fsmonitor/fsm-settings-win32.c * compat/mingw.c * compat/obstack.c * compat/regex/regcomp.c * compat/simple-ipc/ipc-unix-socket.c * compat/simple-ipc/ipc-win32.c * compat/terminal.c * convert.c * entry.c * environment.c * exec-cmd.c * git-merge-octopus.sh * git-sh-setup.sh * list-objects-filter-options.c * list-objects-filter-options.h * list-objects.c * lockfile.c * ls-refs.c * mailinfo.c * name-hash.c * notes-merge.c * notes-utils.c * pkt-line.c * preload-index.c * pretty.c * promisor-remote.c * protocol-caps.c * read-cache.c * scalar.c * transport-helper.c * transport.c * tree-walk.c * urlmatch.c * walker.c * wrapper.c Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
2022-09-27l10n: es: update translationAlex Henrie1-1077/+1512
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
2022-09-28Merge branch 'main' of github.com:git/gitJiang Xin3-10/+2
* 'main' of github.com:git/git: Git 2.38-rc2 pack-bitmap: remove trace2 region from hot path
2022-09-27Git 2.38-rc2v2.38.0-rc2Junio C Hamano1-1/+1
We have small updates since -rc1 but none of them is about a new thing and there is no updates to the release notes. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-27string-list: document iterator behavior on NULL inputDerrick Stolee1-1/+6
The for_each_string_list_item() macro takes a string_list and automatically constructs a for loop to iterate over its contents. This macro will segfault if the list is non-NULL. We cannot change the macro to be careful around NULL values because there are many callers that use the address of a local variable, which will never be NULL and will cause compile errors with -Werror=address. For now, leave a documentation comment to try to avoid mistakes in the future where a caller does not check for a NULL list. Signed-off-by: Derrick Stolee <derrickstolee@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-27gc: replace config subprocesses with API callsDerrick Stolee1-30/+43
The 'git maintenance [un]register' commands set or unset the multi- valued maintenance.repo config key with the absolute path of the current repository. These are set in the global config file. Instead of calling a subcommand and creating a new process, create the proper API calls to git_config_set_multivar_in_file_gently(). It requires loading the filename for the global config file (and erroring out if now $HOME value is set). We also need to be careful about using CONFIG_REGEX_NONE when adding the value and using CONFIG_FLAGS_FIXED_VALUE when removing the value. In both cases, we check that the value already exists (this check already existed for 'unregister'). Also, remove the transparent translation of the error code from the config API to the exit code of 'git maintenance'. Instead, use die() to recover from failures at that level. In the case of 'unregister --force', allow the CONFIG_NOTHING_SET error code to be a success. This allows a possible race where another process removes the config value. The end result is that the config value is not set anymore, so we can treat this as a success. Reported-by: SZEDER Gábor <szeder.dev@gmail.com> Signed-off-by: Derrick Stolee <derrickstolee@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-27scalar: make 'unregister' idempotentDerrick Stolee2-2/+8
The 'scalar unregister' command removes a repository from the list of registered Scalar repositories and removes it from the list of repositories registered for background maintenance. If the repository was not already registered for background maintenance, then the command fails, even if the repository was still registered as a Scalar repository. After using 'scalar clone' or 'scalar register', the repository would be enrolled in background maintenance since those commands run 'git maintenance start'. If the user runs 'git maintenance unregister' on that repository, then it is still in the list of repositories which get new config updates from 'scalar reconfigure'. The 'scalar unregister' command would fail since 'git maintenance unregister' would fail. Further, the add_or_remove_enlistment() method in scalar.c already has this idempotent nature built in as an expectation since it returns zero when the scalar.repo list already has the proper containment of the repository. The previous change added the 'git maintenance unregister --force' option, so use it within 'scalar unregister' to make it idempotent. Signed-off-by: Derrick Stolee <derrickstolee@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-27maintenance: add 'unregister --force'Derrick Stolee3-8/+44
The 'git maintenance unregister' subcommand has a step that removes the current repository from the multi-valued maitenance.repo config key. This fails if the repository is not listed in that key. This makes running 'git maintenance unregister' twice result in a failure in the second instance. This failure exit code is helpful, but its message is not. Add a new die() message that explicitly calls out the failure due to the repository not being registered. In some cases, users may want to run 'git maintenance unregister' just to make sure that background jobs will not start on this repository, but they do not want to check to see if it is registered first. Add a new '--force' option that will siltently succeed if the repository is not already registered. Also add an extra test of 'git maintenance unregister' at a point where there are no registered repositories. This should fail without --force. Signed-off-by: Derrick Stolee <derrickstolee@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-26Merge branch 'ds/bitmap-lookup-remove-tracing'Junio C Hamano2-9/+1
Perf-fix. * ds/bitmap-lookup-remove-tracing: pack-bitmap: remove trace2 region from hot path
2022-09-26pack-bitmap: remove trace2 region from hot pathDerrick Stolee2-9/+1
The trace2 region around the call to lazy_bitmap_for_commit() in bitmap_for_commit() was added in 28cd730680d (pack-bitmap: prepare to read lookup table extension, 2022-08-14). While adding trace2 regions is typically helpful for tracking performance, this method is called possibly thousands of times as a commit walk explores commit history looking for a matching bitmap. When trace2 output is enabled, this region is emitted many times and performance is throttled by that output. For now, remove these regions entirely. This is a critical path, and it would be valuable to measure that the time spent in bitmap_for_commit() does not increase when using the commit lookup table. The best way to do that would be to use a mechanism that sums the time spent in a region and reports a single value at the end of the process. This technique was introduced but not merged by [1] so maybe this example presents some justification to revisit that approach. [1] https://lore.kernel.org/git/pull.1099.v2.git.1640720202.gitgitgadget@gmail.com/ To help with the 'git blame' output in this region, add a comment that warns against adding a trace2 region. Delete a test from t5310 that used that trace output to check that this lookup optimization was activated. To create this kind of test again in the future, the stopwatch traces mentioned earlier could be used as a signal that we activated this code path. Helpedy-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Derrick Stolee <derrickstolee@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-26ref-filter.c: fix a leak in get_head_descriptionRubén Justo1-0/+2
In 2708ce62d2 (branch: sort detached HEAD based on a flag, 2021-01-07) a call to wt_status_state_free_buffers, responsible of freeing the resources that could be allocated in the local struct wt_status_state state, was eliminated. The call to wt_status_state_free_buffers was introduced in 962dd7ebc3 (wt-status: introduce wt_status_state_free_buffers(), 2020-09-27). This commit brings back that call in get_head_description. Signed-off-by: Rubén Justo <rjusto@gmail.com> Reviewed-by: Martin Ågren <martin.agren@gmail.com> Acked-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-26sequencer: avoid dropping fixup commit that targets self via commit-ishJohannes Altmanninger2-2/+15
Commit 68d5d03bc4 (rebase: teach --autosquash to match on sha1 in addition to message, 2010-11-04) taught autosquash to recognize subjects like "fixup! 7a235b" where 7a235b is an OID-prefix. It actually did more than advertised: 7a235b can be an arbitrary commit-ish (as long as it's not trailed by spaces). Accidental(?) use of this secret feature revealed a bug where we would silently drop a fixup commit. The bug can also be triggered when using an OID-prefix but that's unlikely in practice. Let the commit with subject "fixup! main" be the tip of the "main" branch. When computing the fixup target for this commit, we find the commit itself. This is wrong because, by definition, a fixup target must be an earlier commit in the todo list. We wrongly find the current commit because we added it to the todo list prematurely. Avoid these fixup-cycles by only adding the current commit to the todo list after we have finished looking for the fixup target. Reported-by: Erik Cervin Edin <erik@cervined.in> Signed-off-by: Johannes Altmanninger <aclopte@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-26l10n: sv.po: Update Swedish translation (5484t0f0u)Peter Krefting1-190/+205
Also fix a couple of typos. Signed-off-by: Peter Krefting <peter@softwolves.pp.se>
2022-09-25l10n: Update Catalan translationJordi Mas1-22/+51
Signed-off-by: Jordi Mas <jmas@softcatala.org>
2022-09-24Merge branch 'main' of github.com:git/gitJiang Xin2-2/+2
* 'main' of github.com:git/git: cmd-list.perl: fix identifying man sections pack-bitmap: improve grammar of "xor chain" error message
2022-09-24Merge branch 'fr_quickfix' of github.com:jnavila/gitJiang Xin1-1/+1
* 'fr_quickfix' of github.com:jnavila/git: l10n: fr: don't say that merge is "the default strategy"
2022-09-24Merge branch 'po-id' of github.com:bagasme/git-poJiang Xin1-268/+275
* 'po-id' of github.com:bagasme/git-po: l10n: po-id for 2.38 (round 2)
2022-09-24Merge branch 'turkish' of github.com:bitigchi/git-poJiang Xin1-193/+217
* 'turkish' of github.com:bitigchi/git-po: l10n: tr: v2.38.0 round 2
2022-09-23l10n: fr: don't say that merge is "the default strategy"Alex Henrie1-1/+1
The text of this message was changed in commit 71076d0edde43a7672a9a0f555753ff078602a64 to avoid making any suggestion about which strategy is better for the situation at hand. Update the Franch translation to match. Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
2022-09-23Merge branch 'ac/bitmap-lookup-table'Junio C Hamano1-1/+1
Grammofix. * ac/bitmap-lookup-table: pack-bitmap: improve grammar of "xor chain" error message
2022-09-23Merge branch 'ma/scalar-to-main-fix'Junio C Hamano1-1/+1
Fix manpage generation. * ma/scalar-to-main-fix: cmd-list.perl: fix identifying man sections
2022-09-23cmd-list.perl: fix identifying man sectionsMartin Ågren1-1/+1
We attribute each documentation text file to a man section by finding a line in the file that looks like "gitfoo(<digit>)". Commit cc75e556a9 ("scalar: add to 'git help -a' command list", 2022-09-02) updated this logic to look not only for "gitfoo" but also "scalarfoo". In doing so, it forgot to account for the fact that after the updated regex has found a match, the man section is no longer to be found in `$1` but now lives in `$2`. This makes our git(1) manpage look as follows: Main porcelain commands git-add(git) Add file contents to the index. [...] gitk(git) The Git repository browser. scalar(scalar) A tool for managing large Git repositories. Restore the man sections by not capturing the (git|scalar) part of the match into `$1`. As noted by Ævar [1], we could even match any "foo" rather than just "gitfoo" and "scalarfoo", but that's a larger change. For now, just fix the regression in cc75e556a9. [1] https://lore.kernel.org/git/220923.86wn9u4joo.gmgdl@evledraar.gmail.com/#t Helped-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Martin Ågren <martin.agren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-23builtin/grep.c: integrate with sparse indexShaoxuan Yuan3-3/+118
Turn on sparse index and remove ensure_full_index(). Before this patch, `git-grep` utilizes the ensure_full_index() method to expand the index and search all the entries. Because this method requires walking all the trees and constructing the index, it is the slow part within the whole command. To achieve better performance, this patch uses grep_tree() to search the sparse directory entries and get rid of the ensure_full_index() method. Why grep_tree() is a better choice over ensure_full_index()? 1) grep_tree() is as correct as ensure_full_index(). grep_tree() looks into every sparse-directory entry (represented by a tree) recursively when looping over the index, and the result of doing so matches the result of expanding the index. 2) grep_tree() utilizes pathspecs to limit the scope of searching. ensure_full_index() always expands the index, which means it will always walk all the trees and blobs in the repo without caring if the user only wants a subset of the content, i.e. using a pathspec. On the other hand, grep_tree() will only search the contents that match the pathspec, and thus possibly walking fewer trees. 3) grep_tree() does not construct and copy back a new index, while ensure_full_index() does. This also saves some time. ---------------- Performance test - Summary: p2000 tests demonstrate a ~71% execution time reduction for `git grep --cached bogus -- "f2/f1/f1/*"` using tree-walking logic. However, notice that this result varies depending on the pathspec given. See below "Command used for testing" for more details. Test HEAD~ HEAD ------------------------------------------------------- 2000.78: git grep ... (full-v3) 0.35 0.39 (≈) 2000.79: git grep ... (full-v4) 0.36 0.30 (≈) 2000.80: git grep ... (sparse-v3) 0.88 0.23 (-73.8%) 2000.81: git grep ... (sparse-v4) 0.83 0.26 (-68.6%) - Command used for testing: git grep --cached bogus -- "f2/f1/f1/*" The reason for specifying a pathspec is that, if we don't specify a pathspec, then grep_tree() will walk all the trees and blobs to find the pattern, and the time consumed doing so is not too different from using the original ensure_full_index() method, which also spends most of the time walking trees. However, when a pathspec is specified, this latest logic will only walk the area of trees enclosed by the pathspec, and the time consumed is reasonably a lot less. Generally speaking, because the performance gain is acheived by walking less trees, which are specified by the pathspec, the HEAD time v.s. HEAD~ time in sparse-v[3|4], should be proportional to "pathspec enclosed area" v.s. "all area", respectively. Namely, the wider the <pathspec> is encompassing, the less the performance difference between HEAD~ and HEAD, and vice versa. That is, if we don't specify a pathspec, the performance difference [1] is indistinguishable: both methods walk all the trees and take generally same amount of time (even with the index construction time included for ensure_full_index()). [1] Performance test result without pathspec (hence walking all trees): Command used: git grep --cached bogus Test HEAD~ HEAD --------------------------------------------------- 2000.78: git grep ... (full-v3) 6.17 5.19 (≈) 2000.79: git grep ... (full-v4) 6.19 5.46 (≈) 2000.80: git grep ... (sparse-v3) 6.57 6.44 (≈) 2000.81: git grep ... (sparse-v4) 6.65 6.28 (≈) -------------------------- NEEDSWORK about submodules There are a few NEEDSWORKs that belong to improvements beyond this topic. See the NEEDSWORK in builtin/grep.c::grep_submodule() for more context. The other two NEEDSWORKs in t1092 are also relative. Suggested-by: Derrick Stolee <derrickstolee@github.com> Helped-by: Derrick Stolee <derrickstolee@github.com> Helped-by: Victoria Dye <vdye@github.com> Helped-by: Elijah Newren <newren@gmail.com> Signed-off-by: Shaoxuan Yuan <shaoxuan.yuan02@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-23pack-bitmap: improve grammar of "xor chain" error messageAlex Henrie1-1/+1
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-23check-non-portable-shell: detect obsolescent egrep/fgrepEric Sunshine1-0/+1
GNU grep deprecated `egrep` and `fgrep` with release 2.5.3 in 2007. As of release 3.8 in 2022, those commands warn[1] that they are obsolescent. Now that all the Git test scripts have been scrubbed of uses of `egrep` and `fgrep`, make `check-non-portable-shell` complain about them to prevent new instances from creeping back into the project. [1]: https://lists.gnu.org/archive/html/info-gnu/2022-09/msg00001.html Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2022-09-23Merge branch 'dd/retire-efgrep' into es/retire-efgrepJunio C Hamano23-55/+53
* dd/retire-efgrep: t: convert fgrep usage to "grep -F" t: convert egrep usage to "grep -E" t: remove \{m,n\} from BRE grep usage CodingGuidelines: allow grep -E
2022-09-23l10n: zh_CN v2.38.0 rounds 1 & 2Fangyi Zhou1-453/+1026
Reviewed-by: Jiang Xin <worldhello.net@gmail.com> Reviewed-by: Li Linchao <lilinchao@oschina.cn> Reviewed-by: 依云 <lilydjwg@gmail.com> Signed-off-by: Fangyi Zhou <me@fangyi.io>
2022-09-23l10n: po-id for 2.38 (round 2)Bagas Sanjaya1-268/+275
Update following components: * branch.c * builtin/log.c * builtin/rebase.c * builtin/remote.c * builtin/reset.c * builtin/rev-list.c * builtin/rev-parse.c * builtin/revert.c * builtin/sparse-checkout.c * builtin/submodule--helper.c * command-list.h * help.c * merge.c Translate following new components: * builtin/check-attr.c * builtin/check-ignore.c * builtin/check-mailmap.c * builtin/column.c * builtin/credential-cache--daemon.c * builtin/credential-cache.c * builtin/credential-store.c * builtin/diagnose.c * builtin/env--helper.c * builtin/fsmonitor--daemon.c * builtin/interpret-trailers.c * builtin/mailinfo.c * builtin/mailsplit.c * builtin/mktag.c * builtin/mktree.c * builtin/pack-redundant.c * builtin/replace.c * builtin/rerere.c * builtin/stripspace.c * bulk-checkin.c * commit.c * credential.c * fsmonitor-ipc.c * fsmonitor-settings.c * http-fetch.c * http.c Also remove unused strings. Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com>
2022-09-23l10n: tr: v2.38.0 round 2Emir SARI1-193/+217
Signed-off-by: Emir SARI <emir_sari@icloud.com>
2022-09-23l10n: bg.po: Updated Bulgarian translation (5484t)Alexander Shopov1-186/+221
Signed-off-by: Alexander Shopov <ash@kambanaria.org>
2022-09-23Merge branch 'fr_v2.38_rnd2' of github.com:jnavila/gitJiang Xin1-360/+921
* 'fr_v2.38_rnd2' of github.com:jnavila/git: l10n: fr: v2.38.0 round 2 l10n: fr: v2.38 round 1 l10n: fr: The word 'branche' is only feminine
2022-09-23Merge branch 'catalan' of github.com:Softcatala/git-poJiang Xin1-965/+1143
* 'catalan' of github.com:Softcatala/git-po: l10n: Update Catalan translation
2022-09-23Merge branch 'l10n-de-2.38' of github.com:ralfth/gitJiang Xin1-394/+873
* 'l10n-de-2.38' of github.com:ralfth/git: l10n: de.po: update German translation
2022-09-23Merge branch 'main' of github.com:git/gitJiang Xin32-48/+284
* 'main' of github.com:git/git: list-objects-filter: initialize sub-filter structs Git 2.38-rc1 Final batch before -rc1 builtin/diagnose.c: don't translate the two mode values t/Makefile: remove 'test-results' on 'make clean' gc: don't translate literal commands Documentation: clean up various typos in technical docs Documentation: clean up a few misspelled word typos version: fix builtin linking & documentation diagnose: add to command-list.txt Documentation: add ReviewingGuidelines commit-graph: Fix missing closedir in expire_commit_graphs diagnose.c: refactor to safely use 'd_type' help: fix doubled words in explanation for developer interfaces api docs: link to html version of api-trace2 docs: fix a few recently broken links reftable: use a pointer for pq_entry param
2022-09-22Merge branch 'jk/list-objects-filter-cleanup'Junio C Hamano1-3/+7
Fix uninitialized memory access in a recent fix-up that is already in -rc1. * jk/list-objects-filter-cleanup: list-objects-filter: initialize sub-filter structs