https://github.com/git/git
Revision 82ba1191ffeaf1482fce9fd9e72334c8dbc3bbbe authored by Johannes Schindelin on 29 July 2022, 10:05:52 UTC, committed by Junio C Hamano on 29 July 2022, 18:24:04 UTC
Files' attributes can indicate more than just whether they are files or directories. It was reported in Git for Windows that on certain network shares, this led to a nasty problem trying to create tags: $ git tag -a -m "automatic tag creation" test_dir/test_tag fatal: cannot lock ref 'refs/tags/test_dir/test_tag': unable to resolve reference 'refs/tags/test_dir/test_tag': Not a directory Note: This does not necessarily happen with all types of network shares. One setup where it _did_ happen is a Windows Server 2019 VM, and as hinted in http://woshub.com/slow-network-shared-folder-refresh-windows-server/ in the indicated instance the following commands worked around the bug: Set-SmbClientConfiguration -DirectoryCacheLifetime 0 Set-SmbClientConfiguration -FileInfoCacheLifetime 0 Set-SmbClientConfiguration -FileNotFoundCacheLifetime 0 This would impact performance negatively, though, as it essentially turns off all caching, therefore we do not want to require users to do that just to be able to use Git on Windows. The underlying bug is in the code added in 4b0abd5c695 (mingw: let lstat() fail with errno == ENOTDIR when appropriate, 2016-01-26) that emulates the POSIX behavior where `lstat()` should return `ENOENT` if the file or directory simply does not exist but could be created, and `ENOTDIR` if there is no file or directory nor could there be because a leading path already exists and is not a directory. In that code, the return value of `GetFileAttributesW()` is interpreted as an enum value, not as a bit field, so that a perfectly fine leading directory can be misdetected as "not a directory". As a consequence, the `read_refs_internal()` function would return `ENOTDIR`, suggesting not only that the tag in the `git tag` invocation above does not exist, but that it cannot even be created. Let's fix the code so that it interprets the return value of the `GetFileAttributesW()` call correctly. This fixes https://github.com/git-for-windows/git/issues/3727 Reported-by: Pierre Garnier <pgarnier@mega.com> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
1 parent fd59c5b
Tip revision: 82ba1191ffeaf1482fce9fd9e72334c8dbc3bbbe authored by Johannes Schindelin on 29 July 2022, 10:05:52 UTC
lstat(mingw): correctly detect ENOTDIR scenarios
lstat(mingw): correctly detect ENOTDIR scenarios
Tip revision: 82ba119
File | Mode | Size |
---|---|---|
.github | ||
Documentation | ||
block-sha1 | ||
builtin | ||
ci | ||
compat | ||
contrib | ||
ewah | ||
git-gui | ||
gitk-git | ||
gitweb | ||
mergetools | ||
negotiator | ||
perl | ||
po | ||
ppc | ||
refs | ||
reftable | ||
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.5 KB |
.gitmodules | -rw-r--r-- | 153 bytes |
.mailmap | -rw-r--r-- | 16.7 KB |
.tsan-suppressions | -rw-r--r-- | 689 bytes |
CODE_OF_CONDUCT.md | -rw-r--r-- | 5.9 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-- | 106.0 KB |
README.md | -rw-r--r-- | 3.6 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.5 KB |
add-interactive.h | -rw-r--r-- | 965 bytes |
add-patch.c | -rw-r--r-- | 50.2 KB |
advice.c | -rw-r--r-- | 7.9 KB |
advice.h | -rw-r--r-- | 2.2 KB |
alias.c | -rw-r--r-- | 2.1 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.7 KB |
apply.h | -rw-r--r-- | 5.2 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.9 KB |
archive.h | -rw-r--r-- | 1.5 KB |
attr.c | -rw-r--r-- | 28.9 KB |
attr.h | -rw-r--r-- | 6.3 KB |
banned.h | -rw-r--r-- | 977 bytes |
base85.c | -rw-r--r-- | 2.8 KB |
bisect.c | -rw-r--r-- | 30.0 KB |
bisect.h | -rw-r--r-- | 2.3 KB |
blame.c | -rw-r--r-- | 83.3 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-- | 22.0 KB |
branch.h | -rw-r--r-- | 5.3 KB |
builtin.h | -rw-r--r-- | 12.4 KB |
bulk-checkin.c | -rw-r--r-- | 7.8 KB |
bulk-checkin.h | -rw-r--r-- | 323 bytes |
bundle.c | -rw-r--r-- | 16.7 KB |
bundle.h | -rw-r--r-- | 1.5 KB |
cache-tree.c | -rw-r--r-- | 24.4 KB |
cache-tree.h | -rw-r--r-- | 2.2 KB |
cache.h | -rw-r--r-- | 67.1 KB |
cbtree.c | -rw-r--r-- | 3.4 KB |
cbtree.h | -rw-r--r-- | 1.5 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-- | 10.5 KB |
color.h | -rw-r--r-- | 5.3 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.6 KB |
commit-graph.c | -rw-r--r-- | 69.4 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-- | 43.2 KB |
commit.h | -rw-r--r-- | 13.6 KB |
common-main.c | -rw-r--r-- | 1.6 KB |
config.c | -rw-r--r-- | 92.1 KB |
config.h | -rw-r--r-- | 21.9 KB |
config.mak.dev | -rw-r--r-- | 2.3 KB |
config.mak.in | -rw-r--r-- | 540 bytes |
config.mak.uname | -rw-r--r-- | 25.3 KB |
configure.ac | -rw-r--r-- | 37.6 KB |
connect.c | -rw-r--r-- | 35.9 KB |
connect.h | -rw-r--r-- | 1.2 KB |
connected.c | -rw-r--r-- | 4.4 KB |
connected.h | -rw-r--r-- | 1.7 KB |
convert.c | -rw-r--r-- | 49.4 KB |
convert.h | -rw-r--r-- | 7.2 KB |
copy.c | -rw-r--r-- | 1.3 KB |
credential.c | -rw-r--r-- | 12.2 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.6 KB |
date.h | -rw-r--r-- | 2.2 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.4 KB |
detect-compiler | -rwxr-xr-x | 997 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-- | 4.2 KB |
diff-merges.h | -rw-r--r-- | 687 bytes |
diff-no-index.c | -rw-r--r-- | 7.2 KB |
diff.c | -rw-r--r-- | 195.6 KB |
diff.h | -rw-r--r-- | 21.5 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-- | 103.7 KB |
dir.h | -rw-r--r-- | 17.5 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-- | 11.0 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-- | 712 bytes |
fetch-negotiator.h | -rw-r--r-- | 1.8 KB |
fetch-pack.c | -rw-r--r-- | 59.1 KB |
fetch-pack.h | -rw-r--r-- | 3.1 KB |
fmt-merge-msg.c | -rw-r--r-- | 18.1 KB |
fmt-merge-msg.h | -rw-r--r-- | 444 bytes |
fsck.c | -rw-r--r-- | 33.9 KB |
fsck.h | -rw-r--r-- | 6.7 KB |
fsmonitor--daemon.h | -rw-r--r-- | 5.5 KB |
fsmonitor-ipc.c | -rw-r--r-- | 3.8 KB |
fsmonitor-ipc.h | -rw-r--r-- | 1.3 KB |
fsmonitor-settings.c | -rw-r--r-- | 2.5 KB |
fsmonitor-settings.h | -rw-r--r-- | 615 bytes |
fsmonitor.c | -rw-r--r-- | 17.0 KB |
fsmonitor.h | -rw-r--r-- | 3.2 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.7 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-- | 41.2 KB |
git-curl-compat.h | -rw-r--r-- | 3.6 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.8 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.6 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 | 160.7 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 | 61.3 KB |
git-sh-i18n.sh | -rw-r--r-- | 1.7 KB |
git-sh-setup.sh | -rw-r--r-- | 8.5 KB |
git-submodule.sh | -rwxr-xr-x | 11.0 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.6 KB |
git.rc | -rw-r--r-- | 635 bytes |
gpg-interface.c | -rw-r--r-- | 28.0 KB |
gpg-interface.h | -rw-r--r-- | 2.2 KB |
graph.c | -rw-r--r-- | 40.1 KB |
graph.h | -rw-r--r-- | 8.7 KB |
grep.c | -rw-r--r-- | 47.3 KB |
grep.h | -rw-r--r-- | 6.4 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.3 KB |
hashmap.c | -rw-r--r-- | 8.4 KB |
hashmap.h | -rw-r--r-- | 19.8 KB |
help.c | -rw-r--r-- | 19.7 KB |
help.h | -rw-r--r-- | 3.2 KB |
hex.c | -rw-r--r-- | 4.4 KB |
hook.c | -rw-r--r-- | 3.8 KB |
hook.h | -rw-r--r-- | 2.3 KB |
http-backend.c | -rw-r--r-- | 19.0 KB |
http-fetch.c | -rw-r--r-- | 4.3 KB |
http-push.c | -rw-r--r-- | 49.8 KB |
http-walker.c | -rw-r--r-- | 14.9 KB |
http.c | -rw-r--r-- | 65.2 KB |
http.h | -rw-r--r-- | 6.7 KB |
ident.c | -rw-r--r-- | 15.9 KB |
imap-send.c | -rw-r--r-- | 36.7 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.1 KB |
list-objects-filter-options.h | -rw-r--r-- | 5.6 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-- | 11.9 KB |
list-objects.h | -rw-r--r-- | 860 bytes |
list.h | -rw-r--r-- | 5.6 KB |
ll-merge.c | -rw-r--r-- | 11.1 KB |
ll-merge.h | -rw-r--r-- | 3.2 KB |
lockfile.c | -rw-r--r-- | 5.6 KB |
lockfile.h | -rw-r--r-- | 11.3 KB |
log-tree.c | -rw-r--r-- | 31.6 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-- | 4.2 KB |
mem-pool.h | -rw-r--r-- | 1.6 KB |
merge-blobs.c | -rw-r--r-- | 2.2 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-- | 151.1 KB |
merge-ort.h | -rw-r--r-- | 2.6 KB |
merge-recursive.c | -rw-r--r-- | 118.6 KB |
merge-recursive.h | -rw-r--r-- | 3.7 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-- | 51.1 KB |
midx.h | -rw-r--r-- | 2.9 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.7 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-- | 65.8 KB |
object-name.c | -rw-r--r-- | 50.7 KB |
object-store.h | -rw-r--r-- | 16.9 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.6 KB |
pack-bitmap.h | -rw-r--r-- | 3.4 KB |
pack-check.c | -rw-r--r-- | 5.3 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.9 KB |
pack-revindex.h | -rw-r--r-- | 4.3 KB |
pack-write.c | -rw-r--r-- | 14.0 KB |
pack.h | -rw-r--r-- | 3.9 KB |
packfile.c | -rw-r--r-- | 57.9 KB |
packfile.h | -rw-r--r-- | 7.0 KB |
pager.c | -rw-r--r-- | 5.3 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.9 KB |
parse-options.c | -rw-r--r-- | 29.1 KB |
parse-options.h | -rw-r--r-- | 14.2 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.5 KB |
pathspec.c | -rw-r--r-- | 18.7 KB |
pathspec.h | -rw-r--r-- | 5.4 KB |
pkt-line.c | -rw-r--r-- | 15.5 KB |
pkt-line.h | -rw-r--r-- | 8.7 KB |
preload-index.c | -rw-r--r-- | 4.0 KB |
pretty.c | -rw-r--r-- | 54.6 KB |
pretty.h | -rw-r--r-- | 4.8 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.1 KB |
progress.h | -rw-r--r-- | 852 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.6 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-- | 102.3 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.7 KB |
ref-filter.h | -rw-r--r-- | 4.4 KB |
reflog-walk.c | -rw-r--r-- | 8.1 KB |
reflog-walk.h | -rw-r--r-- | 903 bytes |
reflog.c | -rw-r--r-- | 10.9 KB |
reflog.h | -rw-r--r-- | 1.3 KB |
refs.c | -rw-r--r-- | 61.6 KB |
refs.h | -rw-r--r-- | 33.9 KB |
refspec.c | -rw-r--r-- | 6.4 KB |
refspec.h | -rw-r--r-- | 2.4 KB |
remote-curl.c | -rw-r--r-- | 40.4 KB |
remote.c | -rw-r--r-- | 70.5 KB |
remote.h | -rw-r--r-- | 11.4 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.5 KB |
repository.c | -rw-r--r-- | 8.2 KB |
repository.h | -rw-r--r-- | 6.3 KB |
rerere.c | -rw-r--r-- | 31.9 KB |
rerere.h | -rw-r--r-- | 1.4 KB |
reset.c | -rw-r--r-- | 5.2 KB |
reset.h | -rw-r--r-- | 1.5 KB |
resolve-undo.c | -rw-r--r-- | 4.5 KB |
resolve-undo.h | -rw-r--r-- | 581 bytes |
revision.c | -rw-r--r-- | 116.5 KB |
revision.h | -rw-r--r-- | 12.8 KB |
run-command.c | -rw-r--r-- | 43.2 KB |
run-command.h | -rw-r--r-- | 18.5 KB |
send-pack.c | -rw-r--r-- | 19.4 KB |
send-pack.h | -rw-r--r-- | 893 bytes |
sequencer.c | -rw-r--r-- | 163.6 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-- | 44.0 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.9 KB |
shallow.h | -rw-r--r-- | 2.6 KB |
shared.mak | -rw-r--r-- | 2.9 KB |
shell.c | -rw-r--r-- | 4.5 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-- | 11.9 KB |
sparse-index.h | -rw-r--r-- | 957 bytes |
split-index.c | -rw-r--r-- | 13.7 KB |
split-index.h | -rw-r--r-- | 1.2 KB |
stable-qsort.c | -rw-r--r-- | 986 bytes |
strbuf.c | -rw-r--r-- | 25.9 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-- | 23.1 KB |
submodule-config.h | -rw-r--r-- | 4.4 KB |
submodule.c | -rw-r--r-- | 67.3 KB |
submodule.h | -rw-r--r-- | 6.2 KB |
symlinks.c | -rw-r--r-- | 10.0 KB |
tag.c | -rw-r--r-- | 5.6 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-- | 7.9 KB |
tmp-objdir.h | -rw-r--r-- | 2.6 KB |
trace.c | -rw-r--r-- | 10.4 KB |
trace.h | -rw-r--r-- | 8.1 KB |
trace2.c | -rw-r--r-- | 18.3 KB |
trace2.h | -rw-r--r-- | 18.6 KB |
trailer.c | -rw-r--r-- | 31.1 KB |
trailer.h | -rw-r--r-- | 3.8 KB |
transport-helper.c | -rw-r--r-- | 41.9 KB |
transport-internal.h | -rw-r--r-- | 2.2 KB |
transport.c | -rw-r--r-- | 41.3 KB |
transport.h | -rw-r--r-- | 9.8 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-- | 79.6 KB |
unpack-trees.h | -rw-r--r-- | 3.4 KB |
upload-pack.c | -rw-r--r-- | 46.4 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.5 KB |
urlmatch.h | -rw-r--r-- | 2.8 KB |
usage.c | -rw-r--r-- | 7.0 KB |
userdiff.c | -rw-r--r-- | 15.1 KB |
userdiff.h | -rw-r--r-- | 1.3 KB |
utf8.c | -rw-r--r-- | 20.0 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-- | 21.7 KB |
worktree.h | -rw-r--r-- | 6.7 KB |
wrap-for-bin.sh | -rw-r--r-- | 946 bytes |
wrapper.c | -rw-r--r-- | 17.8 KB |
write-or-die.c | -rw-r--r-- | 2.3 KB |
ws.c | -rw-r--r-- | 9.4 KB |
wt-status.c | -rw-r--r-- | 72.5 KB |
wt-status.h | -rw-r--r-- | 4.8 KB |
xdiff-interface.c | -rw-r--r-- | 7.6 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 ...