将名为" - "的文件添加到git存储库

Ion*_*zău 2 git

我创建了一个文件,并给它起了名字--.如何将其添加到git存储库?

$ git status
On branch master

Initial commit

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        --

nothing added to commit but untracked files present (use "git add" to track)
Run Code Online (Sandbox Code Playgroud)

我知道我能做到git add .,但我不想.我想知道如何专门添加这个名为的文件--.

我试过了:

$ git add --
Nothing specified, nothing added.
Maybe you wanted to say 'git add .'?
$ git add "--"
Nothing specified, nothing added.
Maybe you wanted to say 'git add .'?
$ git add '"--"'
fatal: pathspec '"--"' did not match any files
$ git add \-\-
Nothing specified, nothing added.
Maybe you wanted to say 'git add .'?
Run Code Online (Sandbox Code Playgroud)

那么,如何添加一个名为--准备提交的文件?

Jon*_*ler 6

您可以使用:

git add ./--
Run Code Online (Sandbox Code Playgroud)

要么:

git add $PWD/--
Run Code Online (Sandbox Code Playgroud)

甚至:

git add -- --
Run Code Online (Sandbox Code Playgroud)

这些都是处理不恰当命名的文件的标准技术,这些文件看起来像命令的选项,但实际上是文件.这些技巧的标准要求是rm -f ./--mv ./-- ./something-meaningful.

强烈建议您不要创建名称--永久的文件.

根据POSIX的授权,它通常是Unix命令的标准含义名称.许多命令使用它来标记选项的结尾,并指示参数后面的'文件名'(非选项)参数--.

所以几乎每次你需要对文件做一些事情时,你都要特别对待它的名字.这不值得.任何试图在你的存储库上与你合作的人都会讨厌你.你甚至无法编辑它:vim --不编辑文件--!好; 有方法可以编辑它,例如vim ./--vim -- --,但这是令人讨厌的.(你不能cat使用文件;你不能使用lessmore在文件上;你不能cpmv文件;你不能用文件列出ls -l --,...)