git子模块添加错误

时间:2018-08-06 10:27:07

标签: git git-submodules

我想在新创建的git存储库上添加一个子模块,但出现错误。如果我再次执行相同的命令,它将成功。

C:\>mkdir MyRepo

C:\>cd MyRepo

C:\MyRepo>git init
Initialized empty Git repository in C:/MyRepo/.git/

C:\MyRepo>git submodule add -b refs/heads/master C:\MySubmodulesLibrary\MySubmodule MySubmodule
Cloning into 'C:/MyRepo/MySubmodule'...
done.
fatal: 'origin/refs/heads/master' is not a commit and a branch 'refs/heads/master' cannot be created from it
Unable to checkout submodule 'MySubmodule'

C:\MyRepo>git submodule add -b refs/heads/master C:\MySubmodulesLibrary\MySubmodule MySubmodule
Adding existing repo at 'MySubmodule' to the index
warning: LF will be replaced by CRLF in .gitmodules.
The file will have its original line endings in your working directory.

Git版本:2.17.1.windows.1

我想知道我在做错什么,我第一次执行该操作该怎么做才能使该操作成功。

*此问题是Git扩展错误的后续报告,该错误在您第一次尝试添加子模块时失败,而第二次尝试成功。这些是Git Extensions在添加子模块时发出的命令。但是,从命令行发布它们时,会发生相同的行为。我不知道Git是否会发生这种行为(问题出在Git Extensions发出错误的命令)还是这是Git的错误。

1 个答案:

答案 0 :(得分:1)

尝试使用

git submodule add -b master C:\MySubmodulesLibrary\MySubmodule MySubmodule

-b是简单的分支名称。