https://github.com/git/git
Revision 580097bf95fccda1ebed4b9d81635a27fb322fd9 authored by Jeff King on 02 April 2024, 20:05:17 UTC, committed by Johannes Schindelin on 10 April 2024, 17:24:48 UTC
In get_active_slot(), we return a CURL handle that may have been used before (reusing them is good because it lets curl reuse the same connection across many requests). We set a few curl options back to defaults that may have been modified by previous requests. We reset POSTFIELDS to NULL, but do not reset POSTFIELDSIZE (which defaults to "-1"). This usually doesn't matter because most POSTs will set both fields together anyway. But there is one exception: when handling a large request in remote-curl's post_rpc(), we don't set _either_, and instead set a READFUNCTION to stream data into libcurl. This can interact weirdly with a stale POSTFIELDSIZE setting, because curl will assume it should read only some set number of bytes from our READFUNCTION. However, it has worked in practice because we also manually set a "Transfer-Encoding: chunked" header, which libcurl uses as a clue to set the POSTFIELDSIZE to -1 itself. So everything works, but we're better off resetting the size manually for a few reasons: - there was a regression in curl 8.7.0 where the chunked header detection didn't kick in, causing any large HTTP requests made by Git to fail. This has since been fixed (but not yet released). In the issue, curl folks recommended setting it explicitly to -1: https://github.com/curl/curl/issues/13229#issuecomment-2029826058 and it indeed works around the regression. So even though it won't be strictly necessary after the fix there, this will help folks who end up using the affected libcurl versions. - it's consistent with what a new curl handle would look like. Since get_active_slot() may or may not return a used handle, this reduces the possibility of heisenbugs that only appear with certain request patterns. Note that the recommendation in the curl issue is to actually drop the manual Transfer-Encoding header. Modern libcurl will add the header itself when streaming from a READFUNCTION. However, that code wasn't added until 802aa5ae2 (HTTP: use chunked Transfer-Encoding for HTTP_POST if size unknown, 2019-07-22), which is in curl 7.66.0. We claim to support back to 7.19.5, so those older versions still need the manual header. This is a backport of 3242311742 (http: reset POSTFIELDSIZE when clearing curl handle, 2024-04-02) into the `maint-2.39` branch. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
1 parent f44e6a2
Tip revision: 580097bf95fccda1ebed4b9d81635a27fb322fd9 authored by Jeff King on 02 April 2024, 20:05:17 UTC
http: reset POSTFIELDSIZE when clearing curl handle
http: reset POSTFIELDSIZE when clearing curl handle
Tip revision: 580097b
File | Mode | Size |
---|---|---|
.github | ||
Documentation | ||
block-sha1 | ||
builtin | ||
ci | ||
compat | ||
contrib | ||
ewah | ||
git-gui | ||
gitk-git | ||
gitweb | ||
mergetools | ||
negotiator | ||
perl | ||
po | ||
ppc | ||
refs | ||
sha1collisiondetection @ 855827c | ||
sha1dc | ||
sha256 | ||
t | ||
templates | ||
trace2 | ||
xdiff | ||
.cirrus.yml | -rw-r--r-- | 491 bytes |
.clang-format | -rw-r--r-- | 5.0 KB |
.editorconfig | -rw-r--r-- | 288 bytes |
.gitattributes | -rw-r--r-- | 575 bytes |
.gitignore | -rw-r--r-- | 3.4 KB |
.gitmodules | -rw-r--r-- | 153 bytes |
.mailmap | -rw-r--r-- | 16.6 KB |
.travis.yml | -rw-r--r-- | 1.0 KB |
.tsan-suppressions | -rw-r--r-- | 689 bytes |
CODE_OF_CONDUCT.md | -rw-r--r-- | 5.8 KB |
COPYING | -rw-r--r-- | 18.3 KB |
GIT-VERSION-GEN | -rwxr-xr-x | 752 bytes |
INSTALL | -rw-r--r-- | 10.0 KB |
LGPL-2.1 | -rw-r--r-- | 26.2 KB |
Makefile | -rw-r--r-- | 103.4 KB |
README.md | -rw-r--r-- | 3.2 KB |
RelNotes | l--------- | 33 bytes |
SECURITY.md | -rw-r--r-- | 1.9 KB |
abspath.c | -rw-r--r-- | 7.2 KB |
aclocal.m4 | -rw-r--r-- | 1.4 KB |
add-interactive.c | -rw-r--r-- | 30.4 KB |
add-interactive.h | -rw-r--r-- | 965 bytes |
add-patch.c | -rw-r--r-- | 50.1 KB |
advice.c | -rw-r--r-- | 7.7 KB |
advice.h | -rw-r--r-- | 2.1 KB |
alias.c | -rw-r--r-- | 2.3 KB |
alias.h | -rw-r--r-- | 310 bytes |
alloc.c | -rw-r--r-- | 3.2 KB |
alloc.h | -rw-r--r-- | 527 bytes |
apply.c | -rw-r--r-- | 131.8 KB |
apply.h | -rw-r--r-- | 5.3 KB |
archive-tar.c | -rw-r--r-- | 12.3 KB |
archive-zip.c | -rw-r--r-- | 17.1 KB |
archive.c | -rw-r--r-- | 17.8 KB |
archive.h | -rw-r--r-- | 1.5 KB |
attr.c | -rw-r--r-- | 29.6 KB |
attr.h | -rw-r--r-- | 6.6 KB |
banned.h | -rw-r--r-- | 1.1 KB |
base85.c | -rw-r--r-- | 2.8 KB |
bisect.c | -rw-r--r-- | 30.0 KB |
bisect.h | -rw-r--r-- | 2.2 KB |
blame.c | -rw-r--r-- | 83.4 KB |
blame.h | -rw-r--r-- | 5.6 KB |
blob.c | -rw-r--r-- | 461 bytes |
blob.h | -rw-r--r-- | 688 bytes |
bloom.c | -rw-r--r-- | 8.0 KB |
bloom.h | -rw-r--r-- | 3.0 KB |
branch.c | -rw-r--r-- | 10.1 KB |
branch.h | -rw-r--r-- | 3.0 KB |
builtin.h | -rw-r--r-- | 12.3 KB |
bulk-checkin.c | -rw-r--r-- | 7.8 KB |
bulk-checkin.h | -rw-r--r-- | 323 bytes |
bundle.c | -rw-r--r-- | 15.1 KB |
bundle.h | -rw-r--r-- | 1.4 KB |
cache-tree.c | -rw-r--r-- | 23.2 KB |
cache-tree.h | -rw-r--r-- | 2.2 KB |
cache.h | -rw-r--r-- | 65.9 KB |
cbtree.c | -rw-r--r-- | 4.2 KB |
cbtree.h | -rw-r--r-- | 1.6 KB |
chdir-notify.c | -rw-r--r-- | 1.8 KB |
chdir-notify.h | -rw-r--r-- | 2.5 KB |
check-builtins.sh | -rwxr-xr-x | 596 bytes |
checkout.c | -rw-r--r-- | 1.9 KB |
checkout.h | -rw-r--r-- | 369 bytes |
chunk-format.c | -rw-r--r-- | 4.1 KB |
chunk-format.h | -rw-r--r-- | 1.9 KB |
color.c | -rw-r--r-- | 9.6 KB |
color.h | -rw-r--r-- | 4.8 KB |
column.c | -rw-r--r-- | 9.4 KB |
column.h | -rw-r--r-- | 1.4 KB |
combine-diff.c | -rw-r--r-- | 42.9 KB |
command-list.txt | -rw-r--r-- | 11.5 KB |
commit-graph.c | -rw-r--r-- | 68.9 KB |
commit-graph.h | -rw-r--r-- | 5.4 KB |
commit-reach.c | -rw-r--r-- | 23.8 KB |
commit-reach.h | -rw-r--r-- | 3.8 KB |
commit-slab-decl.h | -rw-r--r-- | 1.4 KB |
commit-slab-impl.h | -rw-r--r-- | 3.1 KB |
commit-slab.h | -rw-r--r-- | 2.5 KB |
commit.c | -rw-r--r-- | 42.3 KB |
commit.h | -rw-r--r-- | 13.4 KB |
common-main.c | -rw-r--r-- | 1.3 KB |
config.c | -rw-r--r-- | 85.7 KB |
config.h | -rw-r--r-- | 22.2 KB |
config.mak.dev | -rw-r--r-- | 1.8 KB |
config.mak.in | -rw-r--r-- | 540 bytes |
config.mak.uname | -rw-r--r-- | 24.3 KB |
configure.ac | -rw-r--r-- | 37.5 KB |
connect.c | -rw-r--r-- | 35.9 KB |
connect.h | -rw-r--r-- | 1.2 KB |
connected.c | -rw-r--r-- | 4.3 KB |
connected.h | -rw-r--r-- | 1.7 KB |
convert.c | -rw-r--r-- | 49.3 KB |
convert.h | -rw-r--r-- | 7.2 KB |
copy.c | -rw-r--r-- | 1.3 KB |
credential.c | -rw-r--r-- | 12.1 KB |
credential.h | -rw-r--r-- | 6.4 KB |
csum-file.c | -rw-r--r-- | 5.3 KB |
csum-file.h | -rw-r--r-- | 1.9 KB |
ctype.c | -rw-r--r-- | 2.6 KB |
daemon.c | -rw-r--r-- | 34.5 KB |
date.c | -rw-r--r-- | 31.5 KB |
decorate.c | -rw-r--r-- | 1.7 KB |
decorate.h | -rw-r--r-- | 1.4 KB |
delta-islands.c | -rw-r--r-- | 11.7 KB |
delta-islands.h | -rw-r--r-- | 572 bytes |
delta.h | -rw-r--r-- | 3.3 KB |
detect-compiler | -rwxr-xr-x | 981 bytes |
diff-delta.c | -rw-r--r-- | 15.5 KB |
diff-lib.c | -rw-r--r-- | 18.7 KB |
diff-merges.c | -rw-r--r-- | 3.9 KB |
diff-merges.h | -rw-r--r-- | 687 bytes |
diff-no-index.c | -rw-r--r-- | 7.2 KB |
diff.c | -rw-r--r-- | 193.7 KB |
diff.h | -rw-r--r-- | 21.4 KB |
diffcore-break.c | -rw-r--r-- | 9.3 KB |
diffcore-delta.c | -rw-r--r-- | 5.5 KB |
diffcore-order.c | -rw-r--r-- | 2.4 KB |
diffcore-pickaxe.c | -rw-r--r-- | 7.1 KB |
diffcore-rename.c | -rw-r--r-- | 51.2 KB |
diffcore-rotate.c | -rw-r--r-- | 1.0 KB |
diffcore.h | -rw-r--r-- | 7.5 KB |
dir-iterator.c | -rw-r--r-- | 5.8 KB |
dir-iterator.h | -rw-r--r-- | 4.3 KB |
dir.c | -rw-r--r-- | 102.8 KB |
dir.h | -rw-r--r-- | 17.3 KB |
editor.c | -rw-r--r-- | 3.0 KB |
entry.c | -rw-r--r-- | 14.7 KB |
entry.h | -rw-r--r-- | 1.9 KB |
environment.c | -rw-r--r-- | 10.6 KB |
environment.h | -rw-r--r-- | 246 bytes |
exec-cmd.c | -rw-r--r-- | 8.0 KB |
exec-cmd.h | -rw-r--r-- | 475 bytes |
fetch-negotiator.c | -rw-r--r-- | 599 bytes |
fetch-negotiator.h | -rw-r--r-- | 1.6 KB |
fetch-pack.c | -rw-r--r-- | 58.3 KB |
fetch-pack.h | -rw-r--r-- | 3.1 KB |
fmt-merge-msg.c | -rw-r--r-- | 17.9 KB |
fmt-merge-msg.h | -rw-r--r-- | 420 bytes |
fsck.c | -rw-r--r-- | 35.2 KB |
fsck.h | -rw-r--r-- | 7.1 KB |
fsmonitor.c | -rw-r--r-- | 13.0 KB |
fsmonitor.h | -rw-r--r-- | 2.9 KB |
fuzz-commit-graph.c | -rw-r--r-- | 465 bytes |
fuzz-pack-headers.c | -rw-r--r-- | 309 bytes |
fuzz-pack-idx.c | -rw-r--r-- | 277 bytes |
generate-cmdlist.sh | -rwxr-xr-x | 1.5 KB |
generate-configlist.sh | -rwxr-xr-x | 370 bytes |
generate-hooklist.sh | -rwxr-xr-x | 299 bytes |
gettext.c | -rw-r--r-- | 3.2 KB |
gettext.h | -rw-r--r-- | 1.3 KB |
git-add--interactive.perl | -rwxr-xr-x | 46.6 KB |
git-archimport.perl | -rwxr-xr-x | 36.1 KB |
git-bisect.sh | -rwxr-xr-x | 2.1 KB |
git-compat-util.h | -rw-r--r-- | 38.7 KB |
git-curl-compat.h | -rw-r--r-- | 3.8 KB |
git-cvsexportcommit.perl | -rwxr-xr-x | 12.8 KB |
git-cvsimport.perl | -rwxr-xr-x | 31.3 KB |
git-cvsserver.perl | -rwxr-xr-x | 159.3 KB |
git-difftool--helper.sh | -rwxr-xr-x | 2.4 KB |
git-filter-branch.sh | -rwxr-xr-x | 15.5 KB |
git-instaweb.sh | -rwxr-xr-x | 21.8 KB |
git-merge-octopus.sh | -rwxr-xr-x | 2.4 KB |
git-merge-one-file.sh | -rwxr-xr-x | 3.6 KB |
git-merge-resolve.sh | -rwxr-xr-x | 944 bytes |
git-mergetool--lib.sh | -rw-r--r-- | 9.5 KB |
git-mergetool.sh | -rwxr-xr-x | 11.3 KB |
git-p4.py | -rwxr-xr-x | 165.3 KB |
git-quiltimport.sh | -rwxr-xr-x | 3.6 KB |
git-request-pull.sh | -rwxr-xr-x | 4.0 KB |
git-send-email.perl | -rwxr-xr-x | 60.2 KB |
git-sh-i18n.sh | -rw-r--r-- | 1.7 KB |
git-sh-setup.sh | -rw-r--r-- | 8.7 KB |
git-submodule.sh | -rwxr-xr-x | 13.8 KB |
git-svn.perl | -rwxr-xr-x | 63.1 KB |
git-web--browse.sh | -rwxr-xr-x | 4.3 KB |
git.c | -rw-r--r-- | 27.3 KB |
git.rc | -rw-r--r-- | 635 bytes |
gpg-interface.c | -rw-r--r-- | 25.8 KB |
gpg-interface.h | -rw-r--r-- | 2.0 KB |
graph.c | -rw-r--r-- | 40.0 KB |
graph.h | -rw-r--r-- | 8.6 KB |
grep.c | -rw-r--r-- | 49.1 KB |
grep.h | -rw-r--r-- | 5.9 KB |
hash-lookup.c | -rw-r--r-- | 3.2 KB |
hash-lookup.h | -rw-r--r-- | 1.3 KB |
hash.h | -rw-r--r-- | 9.2 KB |
hashmap.c | -rw-r--r-- | 8.4 KB |
hashmap.h | -rw-r--r-- | 19.8 KB |
help.c | -rw-r--r-- | 19.3 KB |
help.h | -rw-r--r-- | 3.2 KB |
hex.c | -rw-r--r-- | 4.4 KB |
hook.c | -rw-r--r-- | 974 bytes |
hook.h | -rw-r--r-- | 370 bytes |
http-backend.c | -rw-r--r-- | 19.0 KB |
http-fetch.c | -rw-r--r-- | 3.9 KB |
http-push.c | -rw-r--r-- | 49.8 KB |
http-walker.c | -rw-r--r-- | 14.9 KB |
http.c | -rw-r--r-- | 64.9 KB |
http.h | -rw-r--r-- | 6.7 KB |
ident.c | -rw-r--r-- | 15.9 KB |
imap-send.c | -rw-r--r-- | 36.9 KB |
iterator.h | -rw-r--r-- | 2.1 KB |
json-writer.c | -rw-r--r-- | 8.5 KB |
json-writer.h | -rw-r--r-- | 4.2 KB |
khash.h | -rw-r--r-- | 12.8 KB |
kwset.c | -rw-r--r-- | 20.6 KB |
kwset.h | -rw-r--r-- | 2.5 KB |
levenshtein.c | -rw-r--r-- | 2.5 KB |
levenshtein.h | -rw-r--r-- | 203 bytes |
line-log.c | -rw-r--r-- | 33.0 KB |
line-log.h | -rw-r--r-- | 1.7 KB |
line-range.c | -rw-r--r-- | 6.6 KB |
line-range.h | -rw-r--r-- | 1.4 KB |
linear-assignment.c | -rw-r--r-- | 4.1 KB |
linear-assignment.h | -rw-r--r-- | 736 bytes |
list-objects-filter-options.c | -rw-r--r-- | 11.0 KB |
list-objects-filter-options.h | -rw-r--r-- | 4.0 KB |
list-objects-filter.c | -rw-r--r-- | 21.8 KB |
list-objects-filter.h | -rw-r--r-- | 3.2 KB |
list-objects.c | -rw-r--r-- | 12.0 KB |
list-objects.h | -rw-r--r-- | 762 bytes |
list.h | -rw-r--r-- | 5.6 KB |
ll-merge.c | -rw-r--r-- | 10.9 KB |
ll-merge.h | -rw-r--r-- | 3.0 KB |
lockfile.c | -rw-r--r-- | 5.6 KB |
lockfile.h | -rw-r--r-- | 11.3 KB |
log-tree.c | -rw-r--r-- | 28.2 KB |
log-tree.h | -rw-r--r-- | 1.4 KB |
ls-refs.c | -rw-r--r-- | 4.9 KB |
ls-refs.h | -rw-r--r-- | 235 bytes |
mailinfo.c | -rw-r--r-- | 28.6 KB |
mailinfo.h | -rw-r--r-- | 1.3 KB |
mailmap.c | -rw-r--r-- | 8.7 KB |
mailmap.h | -rw-r--r-- | 272 bytes |
match-trees.c | -rw-r--r-- | 8.5 KB |
mem-pool.c | -rw-r--r-- | 3.5 KB |
mem-pool.h | -rw-r--r-- | 1.6 KB |
merge-blobs.c | -rw-r--r-- | 2.0 KB |
merge-blobs.h | -rw-r--r-- | 232 bytes |
merge-ort-wrappers.c | -rw-r--r-- | 1.4 KB |
merge-ort-wrappers.h | -rw-r--r-- | 638 bytes |
merge-ort.c | -rw-r--r-- | 149.0 KB |
merge-ort.h | -rw-r--r-- | 2.3 KB |
merge-recursive.c | -rw-r--r-- | 118.4 KB |
merge-recursive.h | -rw-r--r-- | 3.6 KB |
merge.c | -rw-r--r-- | 2.7 KB |
mergesort.c | -rw-r--r-- | 2.0 KB |
mergesort.h | -rw-r--r-- | 574 bytes |
midx.c | -rw-r--r-- | 49.7 KB |
midx.h | -rw-r--r-- | 2.8 KB |
name-hash.c | -rw-r--r-- | 19.1 KB |
notes-cache.c | -rw-r--r-- | 2.3 KB |
notes-cache.h | -rw-r--r-- | 541 bytes |
notes-merge.c | -rw-r--r-- | 22.6 KB |
notes-merge.h | -rw-r--r-- | 2.9 KB |
notes-utils.c | -rw-r--r-- | 5.0 KB |
notes-utils.h | -rw-r--r-- | 1.5 KB |
notes.c | -rw-r--r-- | 37.4 KB |
notes.h | -rw-r--r-- | 12.6 KB |
object-file.c | -rw-r--r-- | 63.0 KB |
object-name.c | -rw-r--r-- | 48.2 KB |
object-store.h | -rw-r--r-- | 15.8 KB |
object.c | -rw-r--r-- | 14.1 KB |
object.h | -rw-r--r-- | 7.1 KB |
oid-array.c | -rw-r--r-- | 1.8 KB |
oid-array.h | -rw-r--r-- | 4.2 KB |
oidmap.c | -rw-r--r-- | 1.5 KB |
oidmap.h | -rw-r--r-- | 2.3 KB |
oidset.c | -rw-r--r-- | 1.8 KB |
oidset.h | -rw-r--r-- | 3.1 KB |
oidtree.c | -rw-r--r-- | 2.5 KB |
oidtree.h | -rw-r--r-- | 584 bytes |
pack-bitmap-write.c | -rw-r--r-- | 17.1 KB |
pack-bitmap.c | -rw-r--r-- | 50.1 KB |
pack-bitmap.h | -rw-r--r-- | 3.5 KB |
pack-check.c | -rw-r--r-- | 5.2 KB |
pack-objects.c | -rw-r--r-- | 4.9 KB |
pack-objects.h | -rw-r--r-- | 8.3 KB |
pack-revindex.c | -rw-r--r-- | 12.3 KB |
pack-revindex.h | -rw-r--r-- | 4.3 KB |
pack-write.c | -rw-r--r-- | 13.9 KB |
pack.h | -rw-r--r-- | 3.9 KB |
packfile.c | -rw-r--r-- | 57.8 KB |
packfile.h | -rw-r--r-- | 7.1 KB |
pager.c | -rw-r--r-- | 5.2 KB |
parallel-checkout.c | -rw-r--r-- | 18.2 KB |
parallel-checkout.h | -rw-r--r-- | 3.2 KB |
parse-options-cb.c | -rw-r--r-- | 6.4 KB |
parse-options.c | -rw-r--r-- | 27.9 KB |
parse-options.h | -rw-r--r-- | 13.0 KB |
patch-delta.c | -rw-r--r-- | 2.4 KB |
patch-ids.c | -rw-r--r-- | 3.7 KB |
patch-ids.h | -rw-r--r-- | 1.2 KB |
path.c | -rw-r--r-- | 38.7 KB |
path.h | -rw-r--r-- | 5.7 KB |
pathspec.c | -rw-r--r-- | 18.7 KB |
pathspec.h | -rw-r--r-- | 5.5 KB |
pkt-line.c | -rw-r--r-- | 14.5 KB |
pkt-line.h | -rw-r--r-- | 8.6 KB |
preload-index.c | -rw-r--r-- | 4.0 KB |
pretty.c | -rw-r--r-- | 54.8 KB |
pretty.h | -rw-r--r-- | 4.5 KB |
prio-queue.c | -rw-r--r-- | 2.0 KB |
prio-queue.h | -rw-r--r-- | 1.6 KB |
progress.c | -rw-r--r-- | 9.2 KB |
progress.h | -rw-r--r-- | 768 bytes |
promisor-remote.c | -rw-r--r-- | 6.3 KB |
promisor-remote.h | -rw-r--r-- | 1.4 KB |
prompt.c | -rw-r--r-- | 1.6 KB |
prompt.h | -rw-r--r-- | 223 bytes |
protocol-caps.c | -rw-r--r-- | 2.5 KB |
protocol-caps.h | -rw-r--r-- | 194 bytes |
protocol.c | -rw-r--r-- | 2.5 KB |
protocol.h | -rw-r--r-- | 1.1 KB |
prune-packed.c | -rw-r--r-- | 959 bytes |
prune-packed.h | -rw-r--r-- | 152 bytes |
quote.c | -rw-r--r-- | 12.5 KB |
quote.h | -rw-r--r-- | 3.9 KB |
range-diff.c | -rw-r--r-- | 15.7 KB |
range-diff.h | -rw-r--r-- | 711 bytes |
reachable.c | -rw-r--r-- | 5.4 KB |
reachable.h | -rw-r--r-- | 304 bytes |
read-cache.c | -rw-r--r-- | 100.7 KB |
rebase-interactive.c | -rw-r--r-- | 7.2 KB |
rebase-interactive.h | -rw-r--r-- | 597 bytes |
rebase.c | -rw-r--r-- | 1.1 KB |
rebase.h | -rw-r--r-- | 226 bytes |
ref-filter.c | -rw-r--r-- | 75.3 KB |
ref-filter.h | -rw-r--r-- | 4.8 KB |
reflog-walk.c | -rw-r--r-- | 8.1 KB |
reflog-walk.h | -rw-r--r-- | 885 bytes |
refs.c | -rw-r--r-- | 60.9 KB |
refs.h | -rw-r--r-- | 32.0 KB |
refspec.c | -rw-r--r-- | 6.4 KB |
refspec.h | -rw-r--r-- | 2.4 KB |
remote-curl.c | -rw-r--r-- | 40.2 KB |
remote.c | -rw-r--r-- | 65.7 KB |
remote.h | -rw-r--r-- | 10.7 KB |
replace-object.c | -rw-r--r-- | 2.2 KB |
replace-object.h | -rw-r--r-- | 1.4 KB |
repo-settings.c | -rw-r--r-- | 3.0 KB |
repository.c | -rw-r--r-- | 7.2 KB |
repository.h | -rw-r--r-- | 5.9 KB |
rerere.c | -rw-r--r-- | 31.9 KB |
rerere.h | -rw-r--r-- | 1.4 KB |
reset.c | -rw-r--r-- | 4.1 KB |
reset.h | -rw-r--r-- | 565 bytes |
resolve-undo.c | -rw-r--r-- | 4.5 KB |
resolve-undo.h | -rw-r--r-- | 581 bytes |
revision.c | -rw-r--r-- | 115.0 KB |
revision.h | -rw-r--r-- | 12.5 KB |
run-command.c | -rw-r--r-- | 44.0 KB |
run-command.h | -rw-r--r-- | 19.6 KB |
send-pack.c | -rw-r--r-- | 19.4 KB |
send-pack.h | -rw-r--r-- | 893 bytes |
sequencer.c | -rw-r--r-- | 164.4 KB |
sequencer.h | -rw-r--r-- | 7.4 KB |
serve.c | -rw-r--r-- | 7.8 KB |
serve.h | -rw-r--r-- | 150 bytes |
server-info.c | -rw-r--r-- | 7.5 KB |
setup.c | -rw-r--r-- | 42.2 KB |
sh-i18n--envsubst.c | -rw-r--r-- | 10.2 KB |
sha1dc_git.c | -rw-r--r-- | 889 bytes |
sha1dc_git.h | -rw-r--r-- | 618 bytes |
shallow.c | -rw-r--r-- | 21.8 KB |
shallow.h | -rw-r--r-- | 2.6 KB |
shell.c | -rw-r--r-- | 5.3 KB |
shortlog.h | -rw-r--r-- | 627 bytes |
sideband.c | -rw-r--r-- | 6.6 KB |
sideband.h | -rw-r--r-- | 1.0 KB |
sigchain.c | -rw-r--r-- | 1.1 KB |
sigchain.h | -rw-r--r-- | 1.7 KB |
simple-ipc.h | -rw-r--r-- | 6.7 KB |
sparse-index.c | -rw-r--r-- | 9.6 KB |
sparse-index.h | -rw-r--r-- | 826 bytes |
split-index.c | -rw-r--r-- | 13.6 KB |
split-index.h | -rw-r--r-- | 1.2 KB |
stable-qsort.c | -rw-r--r-- | 1.2 KB |
strbuf.c | -rw-r--r-- | 25.4 KB |
strbuf.h | -rw-r--r-- | 24.0 KB |
streaming.c | -rw-r--r-- | 12.4 KB |
streaming.h | -rw-r--r-- | 513 bytes |
string-list.c | -rw-r--r-- | 7.7 KB |
string-list.h | -rw-r--r-- | 10.0 KB |
strmap.c | -rw-r--r-- | 4.3 KB |
strmap.h | -rw-r--r-- | 6.8 KB |
strvec.c | -rw-r--r-- | 2.0 KB |
strvec.h | -rw-r--r-- | 2.8 KB |
sub-process.c | -rw-r--r-- | 5.5 KB |
sub-process.h | -rw-r--r-- | 3.1 KB |
submodule-config.c | -rw-r--r-- | 21.3 KB |
submodule-config.h | -rw-r--r-- | 3.4 KB |
submodule.c | -rw-r--r-- | 61.9 KB |
submodule.h | -rw-r--r-- | 6.1 KB |
symlinks.c | -rw-r--r-- | 9.7 KB |
tag.c | -rw-r--r-- | 5.5 KB |
tag.h | -rw-r--r-- | 727 bytes |
tar.h | -rw-r--r-- | 693 bytes |
tempfile.c | -rw-r--r-- | 8.3 KB |
tempfile.h | -rw-r--r-- | 9.4 KB |
thread-utils.c | -rw-r--r-- | 2.6 KB |
thread-utils.h | -rw-r--r-- | 1.4 KB |
tmp-objdir.c | -rw-r--r-- | 6.5 KB |
tmp-objdir.h | -rw-r--r-- | 1.5 KB |
trace.c | -rw-r--r-- | 11.9 KB |
trace.h | -rw-r--r-- | 8.3 KB |
trace2.c | -rw-r--r-- | 19.0 KB |
trace2.h | -rw-r--r-- | 19.3 KB |
trailer.c | -rw-r--r-- | 31.0 KB |
trailer.h | -rw-r--r-- | 3.8 KB |
transport-helper.c | -rw-r--r-- | 41.8 KB |
transport-internal.h | -rw-r--r-- | 2.2 KB |
transport.c | -rw-r--r-- | 40.6 KB |
transport.h | -rw-r--r-- | 9.3 KB |
tree-diff.c | -rw-r--r-- | 18.0 KB |
tree-walk.c | -rw-r--r-- | 32.3 KB |
tree-walk.h | -rw-r--r-- | 6.7 KB |
tree.c | -rw-r--r-- | 3.7 KB |
tree.h | -rw-r--r-- | 1.2 KB |
unicode-width.h | -rw-r--r-- | 9.6 KB |
unimplemented.sh | -rw-r--r-- | 101 bytes |
unix-socket.c | -rw-r--r-- | 2.7 KB |
unix-socket.h | -rw-r--r-- | 370 bytes |
unix-stream-server.c | -rw-r--r-- | 2.9 KB |
unix-stream-server.h | -rw-r--r-- | 760 bytes |
unpack-trees.c | -rw-r--r-- | 74.6 KB |
unpack-trees.h | -rw-r--r-- | 3.4 KB |
upload-pack.c | -rw-r--r-- | 45.8 KB |
upload-pack.h | -rw-r--r-- | 371 bytes |
url.c | -rw-r--r-- | 2.5 KB |
url.h | -rw-r--r-- | 697 bytes |
urlmatch.c | -rw-r--r-- | 18.4 KB |
urlmatch.h | -rw-r--r-- | 2.7 KB |
usage.c | -rw-r--r-- | 6.5 KB |
userdiff.c | -rw-r--r-- | 14.6 KB |
userdiff.h | -rw-r--r-- | 1.3 KB |
utf8.c | -rw-r--r-- | 20.1 KB |
utf8.h | -rw-r--r-- | 3.6 KB |
varint.c | -rw-r--r-- | 660 bytes |
varint.h | -rw-r--r-- | 154 bytes |
version.c | -rw-r--r-- | 718 bytes |
version.h | -rw-r--r-- | 230 bytes |
versioncmp.c | -rw-r--r-- | 5.2 KB |
walker.c | -rw-r--r-- | 7.7 KB |
walker.h | -rw-r--r-- | 1.1 KB |
wildmatch.c | -rw-r--r-- | 7.8 KB |
wildmatch.h | -rw-r--r-- | 264 bytes |
worktree.c | -rw-r--r-- | 19.6 KB |
worktree.h | -rw-r--r-- | 5.9 KB |
wrap-for-bin.sh | -rw-r--r-- | 946 bytes |
wrapper.c | -rw-r--r-- | 14.8 KB |
write-or-die.c | -rw-r--r-- | 1.8 KB |
ws.c | -rw-r--r-- | 9.4 KB |
wt-status.c | -rw-r--r-- | 71.5 KB |
wt-status.h | -rw-r--r-- | 4.8 KB |
xdiff-interface.c | -rw-r--r-- | 7.5 KB |
xdiff-interface.h | -rw-r--r-- | 2.7 KB |
zlib.c | -rw-r--r-- | 6.1 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...