On September 9, 2024 10:26 AM, Okke Timm wrote: >What did you do before the bug happened? (Steps to reproduce your issue) I >changed into a non-git directory. >Then I called git with 'git diff --cached', which produced this error: > >error: unknown option `cached' >usage: git diff --no-index [<options>] <path> <path> [...] > >What did you expect to happen? (Expected behavior) A helfpul error message. > >What happened instead? (Actual behavior) An unhelpful error message saying that >cached is an unknown option. > >What's different between what you expected and what actually happened? >Me being confused why git suddenly forgot that `git diff --cached` is an allowed >option. > >Anything else you want to add: >Please fix and thank you for this great tool! > >Please review the rest of the bug report below. >You can delete any lines you don't wish to share. > > >[System Info] >git version: >git version 2.46.0 >cpu: arm64 >no commit associated with this build >sizeof-long: 8 >sizeof-size_t: 8 >shell-path: /bin/sh >feature: fsmonitor--daemon >libcurl: 8.4.0 >zlib: 1.2.12 >uname: Darwin 23.6.0 Darwin Kernel Version 23.6.0: Mon Jul 29 21:14:21 PDT >2024; root:xnu-10063.141.2~1/RELEASE_ARM64_T8103 arm64 compiler info: >clang: 15.0.0 (clang-1500.3.9.4) libc info: no libc information available $SHELL >(typically, interactive shell): /opt/homebrew/bin/bash > > >[Enabled Hooks] >not run from a git repository - no hooks to show Because you are not in a git repository clone, the --cached option has no meaning. It refers to the staging area only, so when not in a clone, git does not consider --cached as supported because there is no connection between an external directory and an internal. If you want to perform a diff from cached vs. external, run the git diff from inside the clone referencing the internal and external file after --.