如何 git rm 包含 * 的文件

How to git rm a file containing *

由于打字不慎,我在存储库中找到了一个以 * 字符结尾的文件。我正在使用 Bash.

让我们调用文件"bin/abc*"。还有 bin/xyz 和其他以 bin/abc 开头的文件,例如 bin/abc1bin/abc2.

我尝试了一大堆策略,包括:

  1. $ git rm bin/abc\*,删除所有 other 文件,但不删除 "bin/abc*";
  2. $ git rm bin/abc[*],删除所有 other 文件,但不删除 "bin/abc*";
  3. $ git rm bin/abc\*,无法识别任何文件;
  4. $ git rm bin/abc[^a-z],无法识别任何文件;
  5. "git rm "bin/abc*",删除所有 other 文件,但不删除 "bin/abc*";

我 运行 没主意了。

假设文件被跟踪,将文件名放在引号中,例如

git rm "bin/abc*"

如果未被跟踪,请使用 rm 而不是 git rm:

rm "bin/abc*"