空字符串不是有效的pathspec

时间:2018-11-23 04:12:19

标签: git git-bash

在阅读Git - git-submodule Documentation之后,我决定将先前项目中的两个文件导入到新项目的根目录中,因为我不想手动同步这两个文件。 但是,当我执行以下命令时会发生错误:

$ git submodule add -b master -f --name latexci -- https://github.com/donizyo/LaTeX-Travis.git .
fatal: empty string is not a valid pathspec. please use . instead if you meant to match all paths
usage: git submodule--helper clone [--prefix=<path>] [--quiet] [--reference <repository>] [--name <name>] [--depth <depth>] --url <url> --path <path>

    --prefix <path>       alternative anchor for relative paths
    --path <path>         where the new submodule will be cloned to
    --name <string>       name of the new submodule
    --url <string>        url where to clone the submodule from
    --reference <repo>    reference repository
    --dissociate          use --reference only while cloning
    --depth <string>      depth for shallow clones
    -q, --quiet           Suppress output for cloning a submodule
    --progress            force cloning progress

我正在使用 Git Bash 2.19.1.windows.1 执行git命令。

1 个答案:

答案 0 :(得分:2)

路径(.)应该是不存在的文件夹,例如Latex-Travis

相反,这里的“ .”被解释为空路径(因为它引用了您的父仓库),如ruby-git/ruby-git issue 345所示:

  

实际上已弃用了since Git 2.1.6

     

作为pathspec元素的空字符串表示“一切”,即'git add“”',现在是非法的。首先,我们在2.11(2016年11月)中弃用并警告包含此元素的pathspec。

我不知道直接在父级回购文件夹中添加的子模块:我一直习惯将子文件夹添加为父级回购。