Potentially relevant: `git config --global --list` shows ``` status.showstash=true status.submodulesummary=true submodule.recurse=true user.name=Rose Kunkel user.email=rose@xxxxxxxxxxxxx pull.rebase=false init.defaultbranch=main ``` On Tue, Jun 15, 2021 at 5:57 PM Rose Kunkel <rose@xxxxxxxxxxxxx> wrote: > > Running `git status` in the resulting repository gives > ``` > On branch master > Your branch is up to date with 'origin/master'. > > nothing to commit, working tree clean > ``` > > This is the output from the clone command: > ``` > Cloning into 'tree-sitter-langs'... > remote: Enumerating objects: 609, done. > remote: Counting objects: 100% (83/83), done. > remote: Compressing objects: 100% (52/52), done. > remote: Total 609 (delta 40), reused 58 (delta 24), pack-reused 526 > Receiving objects: 100% (609/609), 117.17 KiB | 1.05 MiB/s, done. > Resolving deltas: 100% (322/322), done. > Submodule 'repos/agda' > (https://github.com/tree-sitter/tree-sitter-agda) registered for path > 'repos/agda' > Submodule 'repos/bash' > (https://github.com/tree-sitter/tree-sitter-bash) registered for path > 'repos/bash' > Submodule 'repos/c' (https://github.com/tree-sitter/tree-sitter-c) > registered for path 'repos/c' > Submodule 'repos/c-sharp' > (https://github.com/tree-sitter/tree-sitter-c-sharp) registered for > path 'repos/c-sharp' > Submodule 'repos/cpp' (https://github.com/tree-sitter/tree-sitter-cpp) > registered for path 'repos/cpp' > Submodule 'repos/css' (https://github.com/tree-sitter/tree-sitter-css) > registered for path 'repos/css' > Submodule 'repos/elm' (https://github.com/razzeee/tree-sitter-elm) > registered for path 'repos/elm' > Submodule 'repos/fluent' > (https://github.com/tree-sitter/tree-sitter-fluent) registered for > path 'repos/fluent' > Submodule 'repos/go' (https://github.com/tree-sitter/tree-sitter-go) > registered for path 'repos/go' > Submodule 'repos/html' > (https://github.com/tree-sitter/tree-sitter-html) registered for path > 'repos/html' > Submodule 'repos/janet-simple' > (https://codeberg.org/sogaiu/tree-sitter-janet-simple) registered for > path 'repos/janet-simple' > Submodule 'repos/java' > (https://github.com/tree-sitter/tree-sitter-java) registered for path > 'repos/java' > Submodule 'repos/javascript' > (https://github.com/tree-sitter/tree-sitter-javascript) registered for > path 'repos/javascript' > Submodule 'repos/jsdoc' > (https://github.com/tree-sitter/tree-sitter-jsdoc) registered for path > 'repos/jsdoc' > Submodule 'repos/json' > (https://github.com/tree-sitter/tree-sitter-json) registered for path > 'repos/json' > Submodule 'repos/julia' > (https://github.com/tree-sitter/tree-sitter-julia) registered for path > 'repos/julia' > Submodule 'repos/ocaml' > (https://github.com/tree-sitter/tree-sitter-ocaml) registered for path > 'repos/ocaml' > Submodule 'repos/php' (https://github.com/tree-sitter/tree-sitter-php) > registered for path 'repos/php' > Submodule 'repos/python' > (https://github.com/tree-sitter/tree-sitter-python) registered for > path 'repos/python' > Submodule 'repos/ruby' > (https://github.com/tree-sitter/tree-sitter-ruby) registered for path > 'repos/ruby' > Submodule 'repos/rust' > (https://github.com/tree-sitter/tree-sitter-rust) registered for path > 'repos/rust' > Submodule 'repos/scala' > (https://github.com/tree-sitter/tree-sitter-scala) registered for path > 'repos/scala' > Submodule 'repos/swift' > (https://github.com/tree-sitter/tree-sitter-swift) registered for path > 'repos/swift' > Submodule 'repos/typescript' > (https://github.com/tree-sitter/tree-sitter-typescript) registered for > path 'repos/typescript' > Skipping submodule 'repos/agda' > Skipping submodule 'repos/bash' > Skipping submodule 'repos/c' > Skipping submodule 'repos/c-sharp' > Skipping submodule 'repos/cpp' > Skipping submodule 'repos/css' > Skipping submodule 'repos/elm' > Skipping submodule 'repos/fluent' > Skipping submodule 'repos/go' > Skipping submodule 'repos/html' > Skipping submodule 'repos/janet-simple' > Skipping submodule 'repos/java' > Skipping submodule 'repos/javascript' > Skipping submodule 'repos/jsdoc' > Skipping submodule 'repos/json' > Skipping submodule 'repos/julia' > Skipping submodule 'repos/ocaml' > Skipping submodule 'repos/php' > Skipping submodule 'repos/python' > Skipping submodule 'repos/ruby' > Skipping submodule 'repos/rust' > Skipping submodule 'repos/scala' > Skipping submodule 'repos/swift' > Skipping submodule 'repos/typescript' > ``` > > On Tue, Jun 15, 2021 at 5:51 PM brian m. carlson > <sandals@xxxxxxxxxxxxxxxxxxxx> wrote: > > > > On 2021-06-16 at 00:16:06, Rose Kunkel wrote: > > > # What did you do before the bug happened? (Steps to reproduce your issue) > > > 1. Clone a git repository that sets `update = none` in .gitmodules: > > > $ git clone --recurse-submodules https://github.com/ubolonton/tree-sitter-langs > > > > > > 2. Perform a hard reset: > > > $ cd tree-sitter-langs > > > $ git reset --hard > > > > > > # What did you expect to happen? (Expected behavior) > > > The reset should succeed and do nothing. > > > > I think we're in agreement on this. This should be a fresh clone and so > > a hard reset should change nothing. > > > > > # What happened instead? (Actual behavior) > > > The reset command fails with > > > ``` > > > fatal: not a git repository: ../../.git/modules/repos/agda > > > fatal: could not reset submodule index > > > ``` > > > > Hmmm, I can't reproduce this behavior. What I see is this: > > > > $ git reset --hard > > HEAD is now at 5d362ce Release 0.10.0 > > > > I'm running git version 2.32.0.272.g935e593368 on Debian sid (with the > > experimental packages). > > > > Can you try the clone and run a "git status" command in the repository > > to see if anything is modified after your clone? Are the submodules > > checked out when you perform the clone? In my case, I see lines like > > this: > > > > Skipping submodule 'repos/agda' > > > > If you're seeing something different, then that might contribute to the > > different behavior we're seeing. > > -- > > brian m. carlson (he/him or they/them) > > Toronto, Ontario, CA